浏览器将Javascript字符串解释为HTML标签

jhh*_*shi 0 html javascript google-chrome

我的源HTML中包含以下内容:

<head>
    ...
    <script>window.jQuery || document.write('<script src="/js/jquery.min.js"></script>');</script>
    ...
</head>
Run Code Online (Sandbox Code Playgroud)

但是它被我的浏览器(Chrome)解释为:

<head>
    ...
    <script>window.jQuery || document.write('<script src="/js/jquery.min.js"></script>
</head>
<body>
    "');"
    ...
Run Code Online (Sandbox Code Playgroud)

我试过在document.write字符串中转义斜线,但这没有用。有谁知道如何防止浏览器将其解释为结束脚本标记?

jcu*_*bic 5

</script> 被解释为关闭脚本标签,即使它位于字符串中,您也需要像这样拆分它:

'</'+'script>';
Run Code Online (Sandbox Code Playgroud)