admin管理员组

文章数量:1231050

Below is the code for my YWA wrapper

var astr_ywascript = (document.createElement("script").type = "text/javascript").src = ".js";
document.head.appendChild(astr_ywascript); // <- error on this line

It's run on page load, so it makes no sense that JS can't find the document head tag.

Any ideas?

Thanks


Opera throws this error on the same line. Uncaught exception: Error: WRONG_ARGUMENTS_ER Firebug says: document.head is undefined [Break On This Error] document.head.appendChild(astr_ywascript);

Below is the code for my YWA wrapper

var astr_ywascript = (document.createElement("script").type = "text/javascript").src = "http://d.yimg.com/mi/eu/ywa.js";
document.head.appendChild(astr_ywascript); // <- error on this line

It's run on page load, so it makes no sense that JS can't find the document head tag.

Any ideas?

Thanks


Opera throws this error on the same line. Uncaught exception: Error: WRONG_ARGUMENTS_ER Firebug says: document.head is undefined [Break On This Error] document.head.appendChild(astr_ywascript);

Share Improve this question edited Mar 4, 2013 at 3:51 Josh Unger 7,1537 gold badges37 silver badges55 bronze badges asked Jan 7, 2011 at 9:19 HubroHubro 59.3k72 gold badges237 silver badges402 bronze badges
Add a comment  | 

3 Answers 3

Reset to default 16

In the line

(document.createElement("script").type = "text/javascript").src

you are setting the src property of a string. The assignment in parentheses returns the assigned value. You make the same mistake later in the line, ultimately assigning "http://d.yimg.com/mi/eu/ywa.js" to astr_ywascript

Split it out onto separate lines:

var el=document.createElement("script");
el.type="text/javascript"
el.src=...
document.head.appendChild(el);

Raw Javascript rarely behaves in the fluid way one gets used to with jQuery.

You might also want to get the head as follows:

document.getElementsByTagName("head")[0]

I got this error with Backbone.js because I was doing:

$('#backbone').html(@view.render())

Instead of

$('#backbone').html(@view.render().el)

Like I should have done. Still don't really know what this 'el' business is, but I'm sure I'll figure it out soon.

Just appending this answer for people who might hit this page like I did while searching for an answer to a “Uncaught Error: NOT_FOUND_ERR: DOM Exception 8 error.

I had this error in Chrome. In my case I was using .appendChild(ttt);

The issue was that ttt was an array object instead of the div I intended to append.

So make sure what you are appending is actually a DOM object and not accidentally a different object type.

本文标签: javascriptWhy does chrome throw quotUncaught Error NOTFOUNDERR DOM Exception 8quot hereStack Overflow