Javascript 为什么我的网站中的脚本会出现此错误?
我正试图通过添加以下一组代码来解决我的网站中JQuery LavaLamp菜单栏面临的问题,这些代码由社区中一位杰出的开发人员和人士提出:Javascript 为什么我的网站中的脚本会出现此错误?,javascript,jquery,css,menubar,Javascript,Jquery,Css,Menubar,我正试图通过添加以下一组代码来解决我的网站中JQuery LavaLamp菜单栏面临的问题,这些代码由社区中一位杰出的开发人员和人士提出: <script> if ($.browser.version < 9.0 && $.browser.msie) { document.getElementsByTagName("head")[0].innerHTML = '<script type="text/javascript" src="./Scripts/jq
<script>
if ($.browser.version < 9.0 && $.browser.msie) {
document.getElementsByTagName("head")[0].innerHTML = '<script type="text/javascript" src="./Scripts/jquery.easing.1.1.js"></script><script type="text/javascript" src="./Scripts/jquery.preloader.js"></script><script type="text/javascript" src="./Scripts/jquery.lavalamp.js"></script><script type="text/javascript" src="./Scripts/lavalamp-config.js"></script>';
}
else {
document.getElementById("head")[0].innerHTML = '<script type="text/javascript" src="./Scripts/jquery.easing.1.1.js"></script><script type="text/javascript" src="./Scripts/jquery.preloader.js">';
}
</script>
如果($.browser.version<9.0&&$.browser.msie){
document.getElementsByTagName(“head”)[0].innerHTML='';
}
否则{
document.getElementById(“head”)[0]。innerHTML='';
}
在VisualStudio2010中,我得到了以下错误
未终止字符串常量
在以下行下:
document.getElementsByTagName("head")[0].innerHTML = '<script type="text/javascript" src="./Scripts/jquery.easing.1.1.js"></script><script type="text/javascript" src="./Scripts/jquery.preloader.js"></script><script type="text/javascript" src="./Scripts/jquery.lavalamp.js"></script><script type="text/javascript" src="./Scripts/lavalamp-config.js"></script>';
document.getElementsByTagName(“head”)[0].innerHTML='';
那么我如何解决这个问题呢?
更新#1:
我按照你们的建议更新了我的代码,但我仍然收到同样的错误。此外,下面是错误的快照:
更新#2
我修改了代码,使母版页包含以下代码,但仍然会出现与上面快照中页面顶部显示的错误相同的错误
<head>
<script type="text/javascript">
function getInternetExplorerVersion()
// Returns the version of Internet Explorer or a -1
// (indicating the use of another browser).
{
var rv = -1; // Return value assumes failure.
if (navigator.appName == 'Microsoft Internet Explorer') {
var ua = navigator.userAgent;
var re = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
if (re.exec(ua) != null)
rv = parseFloat(RegExp.$1);
}
return rv;
}
</script>
<script type="text/javascript">
if (getInternetExplorerVersion() < 9.0 && browser_type = "Microsoft Internet Explorer") {
document.getElementsByTagName("head")[0].innerHTML = "<script type='text/javascript' src='./Scripts/jquery.easing.1.1.js'></script><script type='text/javascript' src='./Scripts/jquery.preloader.js'></script><script type='text/javascript' src='./Scripts/jquery.lavalamp.js'></script><script type='text/javascript' src='./Scripts/lavalamp-config.js'></script>";
} else {
document.getElementById("head")[0].innerHTML = "<script type='text/javascript' src='./Scripts/jquery.easing.1.1.js'></script><script type='text/javascript' src='./Scripts/jquery.preloader.js'>";
}
</script>
</head>
函数getInternetExplorerVersion()
//返回Internet Explorer或-1的版本
//(表示使用其他浏览器)。
{
var rv=-1;//返回值假定失败。
如果(navigator.appName==“Microsoft Internet Explorer”){
var ua=navigator.userAgent;
var re=newregexp(“MSIE([0-9]{1,}[\.0-9]{0,})”;
如果(重新执行(ua)!=null)
rv=parseFloat(RegExp.$1);
}
返回rv;
}
如果(getInternetExplorerVersion()<9.0&&browser\u type=“Microsoft Internet Explorer”){
document.getElementsByTagName(“head”)[0].innerHTML=“”;
}否则{
document.getElementById(“head”)[0]。innerHTML=“”;
}
尝试此操作,使用下面的功能获取浏览器版本号
function getInternetExplorerVersion()
// Returns the version of Internet Explorer or a -1
// (indicating the use of another browser).
{
var rv = -1; // Return value assumes failure.
if (navigator.appName == 'Microsoft Internet Explorer') {
var ua = navigator.userAgent;
var re = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
if (re.exec(ua) != null)
rv = parseFloat(RegExp.$1);
}
return rv;
}
和下面获取浏览器名称
var browser_type=navigator.appName(“Microsoft Internet Explorer”)
所以你的新函数看起来像
if (getInternetExplorerVersion() < 9.0 && browser_type = "Microsoft Internet Explorer") {
document.getElementsByTagName("head")[0].innerHTML = "<script type='text/javascript' src='./Scripts/jquery.easing.1.1.js'></script><script type='text/javascript' src='./Scripts/jquery.preloader.js'></script><script type='text/javascript' src='./Scripts/jquery.lavalamp.js'></script><script type='text/javascript' src='./Scripts/lavalamp-config.js'></script>";
} else {
document.getElementById("head")[0].innerHTML = "<script type='text/javascript' src='./Scripts/jquery.easing.1.1.js'></script><script type='text/javascript' src='./Scripts/jquery.preloader.js'>";
}
if(getInternetExplorerVersion()<9.0&&browser\u type=“Microsoft Internet Explorer”){
document.getElementsByTagName(“head”)[0].innerHTML=“”;
}否则{
document.getElementById(“head”)[0]。innerHTML=“”;
}
浏览器可能会将结束脚本标记解释为当前脚本块的结尾,即使它们位于字符串文字中,这反过来意味着特定的字符串文字未终止
在字符串中,而不是
'</script>'
您知道,
$。浏览器
即将被弃用。查看$。支持
。感谢您的帮助,但我没有任何改变。你能看看我最新的问题吗?颠倒单引号和双引号应该没有任何区别。两者都是用于封装html属性值的值,并且都对JS字符串文本有效。既然我正在开发ASP.NET应用程序,如何将其放在母版页中?我应该把你所有的代码都放在
部分吗?这解决了你的问题吗?如果是,那么让我知道,这样我可以告诉你在哪里添加。我没有尝试,因为我不知道把所有的代码放在哪里。
'<\/script>'
'<' + '/script>'
'\x3C/script>'