My website works well on Chrome, Firefox, and Internet Explorer 8. But on Internet Explorer 9, very weird errors are triggered when just hovering over components.
SCRIPT5007: Unable to get value of the property 'ui': object is null or undefined ScriptResource.axd?d=sTHNYcjtEdStW2Igkk0K4NaRiBDytPljgMCYpqxV5NEZ1IEtx3DRHufMFtEMwoh2L3771sigGlR2bqlOxaiwXVEvePerLDCL0hFHHUFdTOM0o55K0&t=ffffffffd37cb3a1, line 181 character 1914
And following the link to the error in the javascript shows me these bits of code:
onNodeOver:function(B,A){A.ui.onOver(B)},onNodeOut:function(B,A){A.ui.onOut(B)}
I'm a little clueless on how to go about solving this error. I've seen this solution but that didn't solve the problem for me.
Any Ideas?
This question is related to
javascript
asp.net
internet-explorer-9
This worked for me in IE 11:
<meta http-equiv="x-ua-compatible" content="IE=edge; charset=UTF-8">
check whether there is a comma at the end.
},
{
name: '???. ??????? ?? ?????. ?3/?',
data: graph_high3,
dataGrouping: {
units: groupingUnits,
groupPixelWidth: 40,
approximation: "average",
enabled: true,
units: [[
'minute',
[1]
]]
}
} // if , - SCRIPT5007
I have written code that sniffs IE4 or greater and is currently functioning perfectly in sites for my company's clients, as well as my own personal sites.
Include the following enumerated constant and function variables into a javascript include file on your page...
//methods
var BrowserTypes = {
Unknown: 0,
FireFox: 1,
Chrome: 2,
Safari: 3,
IE: 4,
IE7: 5,
IE8: 6,
IE9: 7,
IE10: 8,
IE11: 8,
IE12: 8
};
var Browser = function () {
try {
//declares
var type;
var version;
var sVersion;
//process
switch (navigator.appName.toLowerCase()) {
case "microsoft internet explorer":
type = BrowserTypes.IE;
sVersion = navigator.appVersion.substring(navigator.appVersion.indexOf('MSIE') + 5, navigator.appVersion.length);
version = parseFloat(sVersion.split(";")[0]);
switch (parseInt(version)) {
case 7:
type = BrowserTypes.IE7;
break;
case 8:
type = BrowserTypes.IE8;
break;
case 9:
type = BrowserTypes.IE9;
break;
case 10:
type = BrowserTypes.IE10;
break;
case 11:
type = BrowserTypes.IE11;
break;
case 12:
type = BrowserTypes.IE12;
break;
}
break;
case "netscape":
if (navigator.userAgent.toLowerCase().indexOf("chrome") > -1) { type = BrowserTypes.Chrome; }
else { if (navigator.userAgent.toLowerCase().indexOf("firefox") > -1) { type = BrowserTypes.FireFox } };
break;
default:
type = BrowserTypes.Unknown;
break;
}
//returns
return type;
} catch (ex) {
}
};
Then all you have to do is use any conditional functionality such as...
ie. value = (Browser() >= BrowserTypes.IE) ? node.text : node.textContent;
or WindowWidth = (((Browser() >= BrowserTypes.IE9) || (Browser() < BrowserTypes.IE)) ? window.innerWidth : document.documentElement.clientWidth);
or sJSON = (Browser() >= BrowserTypes.IE) ? xmlElement.text : xmlElement.textContent;
Get the idea? Hope this helps.
Oh, you might want to keep it in mind to QA the Browser() function after IE10 is released, just to verify they didn't change the rules.
Well, you should also try adding the Javascript code into a function, then calling the function after document body has loaded..it worked for me :)
You could also get this error if you are viewing accessing the page locally (via file://
instead of http://
)..
There is some discussion about this here: https://github.com/jeromegn/Backbone.localStorage/issues/55
I was also facing the same issue.
I was using the code below in .aspx page without writing authentication configuration in web.config file. After writing the settings in Web.config, I am able to run my code.
<% If Request.IsAuthenticated Then%>
<table></table>
<%end if%>
I was having same issue in IE9. I followed the above answer and I added the line:
<meta http-equiv="X-UA-Compatible" content="IE=8;FF=3;OtherUA=4" />
in my <head>
and it worked.
Source: Stackoverflow.com