62 lines
3.1 KiB
HTML
62 lines
3.1 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<body>
|
|
<script src="../../../resources/js-test-pre.js"></script>
|
|
<script>
|
|
|
|
function newDoc(markup) {
|
|
var iframe = document.createElement('iframe');
|
|
document.body.appendChild(iframe);
|
|
iframe.contentDocument.documentElement.innerHTML = '<head></head><body></body>';
|
|
iframe.contentDocument.body.innerHTML = markup;
|
|
window.doc = iframe.contentDocument;
|
|
window.$ = iframe.contentDocument.querySelector.bind(iframe.contentDocument);
|
|
}
|
|
|
|
function element(name, markup) {
|
|
var element = doc.createElement(name);
|
|
element.textContent = markup;
|
|
return element;
|
|
}
|
|
|
|
description('This test updates contenteditable content attribute, contentEditable IDL property, and -webkit-user-modify CSS property dynamically.');
|
|
|
|
shouldBeFalse('newDoc("<div></div>"); $("div").isContentEditable');
|
|
shouldBeTrue('$("div").contentEditable = "true"; $("div").isContentEditable');
|
|
shouldBeTrue('newDoc("<div contenteditable=true></div>"); $("div").isContentEditable');
|
|
shouldBeFalse('$("div").contentEditable = "false"; $("div").isContentEditable');
|
|
shouldBeTrue('newDoc("<div contenteditable=plaintext-only></div>"); $("div").isContentEditable');
|
|
shouldBeFalse('$("div").contentEditable = "false"; $("div").isContentEditable');
|
|
|
|
debug('');
|
|
debug('Style rules');
|
|
shouldBeTrue('newDoc("<div></div><style> div { -webkit-user-modify: read-write; } </style>"); $("div").isContentEditable');
|
|
shouldBeFalse('$("style").textContent = ""; $("div").isContentEditable');
|
|
shouldBeTrue('$("style").textContent = "* { -webkit-user-modify: read-write-plaintext-only; }"; $("div").isContentEditable');
|
|
shouldBeFalse('newDoc("<div></div>"); style = element("style", "* { -webkit-user-modify: read-write }"); $("div").isContentEditable');
|
|
shouldBeTrue('$("body").appendChild(style); $("div").isContentEditable');
|
|
shouldBeFalse('newDoc("<div></div><style></style>"); $("div").isContentEditable');
|
|
shouldBeTrue('$("style").sheet.insertRule("* { -webkit-user-modify: read-write; }", 0); $("div").isContentEditable');
|
|
shouldBeFalse('$("style").sheet.insertRule("* { -webkit-user-modify: read-only !important; }", 0); $("div").isContentEditable');
|
|
|
|
debug('');
|
|
debug('Inline styles');
|
|
shouldBeTrue('newDoc("<div style=\'-webkit-user-modify:read-write\'></div>"); $("div").isContentEditable');
|
|
shouldBeTrue('$("head").innerHTML = "<base href=\'http://localhost/\'>"; $("div").isContentEditable');
|
|
shouldBeFalse('$("div").style.webkitUserModify = ""; $("div").isContentEditable');
|
|
shouldBeTrue('newDoc("<div></div>"); $("div").style.webkitUserModify = "read-write"; $("div").isContentEditable');
|
|
shouldBeFalse('$("div").setAttribute("style", ""); $("div").isContentEditable');
|
|
shouldBeFalse('newDoc("<div></div>"); $("div").isContentEditable');
|
|
shouldBeTrue('$("div").setAttribute("style", "-webkit-user-modify: read-write"); $("div").isContentEditable');
|
|
shouldBeFalse('$("div").setAttribute("style", "-webkit-user-modify: read-only"); $("div").isContentEditable');
|
|
|
|
var iframes = document.querySelectorAll('iframe');
|
|
for (var i = 0; i < iframes.length; i++)
|
|
document.body.removeChild(iframes[i]);
|
|
|
|
var successfullyParsed = true;
|
|
</script>
|
|
<script src="../../../resources/js-test-post.js"></script>
|
|
</body>
|
|
</html>
|