Note that there are some explanatory texts on larger screens.

plurals
  1. POJavascript Invalid Argument?
    primarykey
    data
    text
    <p>I'm new to JavaScript so please bear with me. I'm working on a custom WYSIWYG editor (no I do not want to use an already made one so please don't suggest it).</p> <p>I'm having trouble getting it to work in Internet Explorer. It gives me an Invalid Arguement error on lines such as the following:</p> <pre><code>document.getElementById('editor').contentWindow.document.execCommand("styleWithCSS", false, "false"); </code></pre> <p>Here is the complete script:</p> <pre><code>function textstyle(a) { document.getElementById(a).style.visibility = 'visible'; document.getElementById('editor').contentWindow.focus(); } function option(a,b) { document.getElementById('editor').contentWindow.document.execCommand(a, false, b); document.getElementById('editor').contentWindow.focus(); } function button(a) { document.getElementById('editor').contentWindow.document.execCommand(a, false, null); document.getElementById('editor').contentWindow.focus(); } var colorSelection; function selectColor(selection) { colorSelection = selection; document.getElementById('colorSelector').style.left = 0 + document.getElementById(selection).offsetLeft + "px"; document.getElementById('colorSelector').style.top = 0 + document.getElementById(selection).offsetTop + document.getElementById(selection).offsetHeight + "px"; document.getElementById('colorSelector').style.visibility = 'visible'; return; } function changeColor(colorCode) { document.getElementById('editor').contentWindow.document.execCommand(colorSelection, false, colorCode); document.getElementById('colorSelector').style.visibility = 'hidden'; document.getElementById('editor').contentWindow.focus(); return; } function dismissmenu() { document.getElementById("colorSelector").style.visibility = 'hidden'; document.getElementById("fontlist").style.visibility = 'hidden'; document.getElementById("formatlist").style.visibility = 'hidden'; document.getElementById("sizelist").style.visibility = 'hidden'; } function Start() { document.getElementById('editor').contentWindow.document.designMode = "on"; document.getElementById('editor').contentWindow.document.execCommand("styleWithCSS", false, "false"); try { document.getElementById('editor').contentWindow.document.execCommand("undo", false, null); editormode = "true"; } catch (e) { editormode = "false"; } if (document.addEventListener) { document.addEventListener("mouseup", dismissmenu, true); document.getElementById("editor").contentWindow.document.addEventListener("mouseup", dismissmenu, true); document.addEventListener("keypress", dismissmenu, true); document.getElementById("editor").contentWindow.document.addEventListener("keypress", dismissmenu, true); } else if (document.attachEvent) { document.attachEvent("mouseup", dismissmenu, true); document.getElementById("editor").contentWindow.document.attachEvent("mouseup", dismissmenu, true); document.attachEvent("keypress", dismissmenu, true); document.getElementById("editor").contentWindow.document.attachEvent("keypress", dismissmenu, true); } } function switchEditorMode() { if (editormode == "true") { var replaceTagsByMode = function(html, editormode) { var tags = {}; for (var i=0, a=['b', 'i', 'u', 'strike', 'sub', 'sup']; i&lt;a.length; i++) { tags[['&lt;', a[i], '&gt;'].join('')] = ['[', a[i], ']'].join(''); tags[['&lt;/', a[i], '&gt;'].join('')] = ['[/', a[i], ']'].join(''); } for (var html_tag in tags) { if (tags.hasOwnProperty(html_tag)) { html = html.replace.apply( html, editormode ? [html_tag, tags[html_tag], 'g'] : [tags[html_tag], html_tag, 'g']); } } return html; }; var editor_body = document.getElementById('editor').contentWindow.document.body; editor_body.innerHTML = replaceTagsByMode(editor_body.innerHTML, editormode); editormode = "false"; } else { var replaceTagsByMode = function(html, editormode) { var tags = {}; for (var i=0, a=['b', 'i', 'u', 'strike', 'sub', 'sup']; i&lt;a.length; i++) { tags[['[', a[i], ']'].join('')] = ['&lt;', a[i], '&gt;'].join(''); tags[['[/', a[i], ']'].join('')] = ['&lt;/', a[i], '&gt;'].join(''); } for (var html_tag in tags) { if (tags.hasOwnProperty(html_tag)) { html = html.replace.apply( html, editormode ? [html_tag, tags[html_tag], 'g'] : [tags[html_tag], html_tag, 'g']); } } return html; }; var editor_body = document.getElementById('editor').contentWindow.document.body; editor_body.innerHTML = replaceTagsByMode(editor_body.innerHTML, editormode); editormode = "true"; } } </code></pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload