WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
Test case (revised: simplified, configurable)
innerHTML-setter-selection-long.html (text/html), 1.11 KB, created by
Nils Barth
on 2013-03-11 00:47:35 PDT
(
hide
)
Description:
Test case (revised: simplified, configurable)
Filename:
MIME Type:
Creator:
Nils Barth
Created:
2013-03-11 00:47:35 PDT
Size:
1.11 KB
patch
obsolete
><!DOCTYPE html> ><p>Number of elements <input id=length type=number value=5000 step=1000><br> ><input id=collapse type=checkbox> Collapse selection before clearing<br> ><button onclick="setInnerHTML()">Set then clear innerHTML</button> ><div id=info></div> ><div id=content contentEditable=true></div> ><script> >var div = document.getElementById("content"); >var lengthInput = document.getElementById("length"); >var collapseInput = document.getElementById("collapse"); >var selection = window.getSelection(); >var info = document.getElementById("info"); > >function setInnerHTML() { > var arrayLength = lengthInput.value; > var contentArray = new Array(arrayLength); > for (var i = 0; i < arrayLength; ++i) { > contentArray[i] = "<br>"; > } > var content = contentArray.join("\n"); > selection.collapse(); // unselect so initial set fast > div.innerHTML = content; > > div.focus(); // select div > if (collapseInput.checked) { // optionally unselect > selection.collapse(); > } > var startTime = new Date(); > div.innerHTML = ""; > var endTime = new Date(); > info.innerHTML = "Time to clear:<br>" + (endTime - startTime) + "ms"; >} ></script>
<!DOCTYPE html> <p>Number of elements <input id=length type=number value=5000 step=1000><br> <input id=collapse type=checkbox> Collapse selection before clearing<br> <button onclick="setInnerHTML()">Set then clear innerHTML</button> <div id=info></div> <div id=content contentEditable=true></div> <script> var div = document.getElementById("content"); var lengthInput = document.getElementById("length"); var collapseInput = document.getElementById("collapse"); var selection = window.getSelection(); var info = document.getElementById("info"); function setInnerHTML() { var arrayLength = lengthInput.value; var contentArray = new Array(arrayLength); for (var i = 0; i < arrayLength; ++i) { contentArray[i] = "<br>"; } var content = contentArray.join("\n"); selection.collapse(); // unselect so initial set fast div.innerHTML = content; div.focus(); // select div if (collapseInput.checked) { // optionally unselect selection.collapse(); } var startTime = new Date(); div.innerHTML = ""; var endTime = new Date(); info.innerHTML = "Time to clear:<br>" + (endTime - startTime) + "ms"; } </script>
View Attachment As Raw
Actions:
View
Attachments on
bug 94733
:
191895
|
192416
|
192635
|
192637
|
192669
|
192848
|
192850
|
197500
|
197504