2009-04-24 21:08:22 +04:00
|
|
|
<html>
|
|
|
|
<head>
|
|
|
|
<script>
|
|
|
|
|
|
|
|
function X() { dump("X\n"); }
|
|
|
|
function Y() { dump("Y\n"); }
|
|
|
|
|
2017-09-29 01:49:04 +03:00
|
|
|
function boom() {
|
2009-04-24 21:08:22 +04:00
|
|
|
dump("Start9\n");
|
|
|
|
|
|
|
|
var div = document.getElementById("v");
|
|
|
|
|
|
|
|
var textNode = document.createTextNode(String.fromCharCode(0xDAAF)); // high surrogate
|
|
|
|
div.appendChild(textNode);
|
|
|
|
|
|
|
|
document.addEventListener("DOMCharacterDataModified", X, true);
|
2017-09-29 01:49:04 +03:00
|
|
|
textNode.data += "B";
|
2009-04-24 21:08:22 +04:00
|
|
|
document.removeEventListener("DOMCharacterDataModified", X, true);
|
|
|
|
|
|
|
|
document.addEventListener("DOMAttrModified", Y, true);
|
|
|
|
textNode.data += String.fromCharCode(0xDF53); // low surrogate
|
|
|
|
document.removeEventListener("DOMAttrModified", Y, true);
|
|
|
|
}
|
|
|
|
|
|
|
|
</script>
|
|
|
|
</head>
|
|
|
|
|
|
|
|
<body onload="boom();"><div id="v"></div></body>
|
|
|
|
|
|
|
|
</html>
|