</script> 用引号括住 html 中的脚本标记
Posted
技术标签:
【中文标题】</script> 用引号括住 html 中的脚本标记【英文标题】:</script> in quotes ending script tag in html 【发布时间】:2014-11-18 12:15:04 【问题描述】:我知道有人问过非常相似的问题,我已经尝试了答案。这是我的代码:
<script>
if( /android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) )
$('<link rel="stylesheet" type="text/css" href="stylesheet-mobile.css" />').appendTo('head');
$('<script src="script-mobile.js"></scr' + 'ipt>').appendTo('head');
else
$('<link rel="stylesheet" type="text/css" href="stylesheet-main.css" />').appendTo('head');
$('<script src="script-main.js"></scr' + 'ipt>').appendTo('head');
</script>
你可以看到我已经打破了关闭尝试让它工作的方式,看起来它会,但它没有。我也尝试过“转义”斜线,即:,对我也不起作用。这些是我在这里找到的答案... CSS 运行良好,所以它不是 jquery 本身,如果我把那个脚本标签拿出来放在最后一个结束标签下面,它就可以工作,所以它不是名字错误的东西。 .. 有什么想法吗?
【问题讨论】:
你为什么使用+
在这里签名$('<script src="script-main.js"></scr' + 'ipt>')
?
你需要在document.ready
函数中添加你的代码。检查这个小提琴jsfiddle.net/r43vev8z。您可以使用 f12 来验证代码。
【参考方案1】:
我能做到
var 值 = '... -->'; var valueNoComments = value.substring(4, value.length -3); document.write(值);【讨论】:
【参考方案2】:试试
<script>
$(document).ready(function()
if( /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) )
$('<link rel="stylesheet" type="text/css" href="stylesheet-mobile.css" />').appendTo('head');
$('<script src="script-mobile.js"></scr' + 'ipt>').appendTo('head');
else
$('<link rel="stylesheet" type="text/css" href="stylesheet-main.css" />').appendTo('head');
$('<script src="script-main.js"></scr' + 'ipt>').appendTo('head');
);
</script>
【讨论】:
【参考方案3】:您可以在页面加载之前对其 DOM 进行操作。使用就绪处理程序$(function() …)
、see the documentation:
<script>
$(function()
if( /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) )
$('<link rel="stylesheet" type="text/css" href="stylesheet-mobile.css" />').appendTo('head');
$('<script src="script-mobile.js"></script>').appendTo('head');
else
$('<link rel="stylesheet" type="text/css" href="stylesheet-main.css" />').appendTo('head');
$('<script src="script-main.js"></script>').appendTo('head');
);
</script>
如果来晚了,你必须在你的页面中使用document.write
<head>
:
<head>
<script>
if( /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) )
document.write('<link rel="stylesheet" type="text/css" href="stylesheet-mobile.css" />');
document.write('<script src="script-mobile.js"></script>');
else
document.write('<link rel="stylesheet" type="text/css" href="stylesheet-main.css" />');
document.write('<script src="script-main.js"></script>');
</script>
</head>
【讨论】:
好先生,谢谢。奇怪的是,将 document.write 添加到 css 链接的前面搞砸了.. 但它在脚本链接上工作得很好,而且 css 链接已经工作了,所以无论如何都没有必要。我敢肯定,这与 DOM 顺序有关。我会在早上尝试第一个解决方案。 :P 第二个解决方案效果很好,非常感谢!以上是关于</script> 用引号括住 html 中的脚本标记的主要内容,如果未能解决你的问题,请参考以下文章