2

包含大量 javascript 的页面还包含在 javascript 中编码为 JS 字符串的 URL。

问题是 Chrome(或者可能只是开发者工具?)正试图导航到这些编码的 URL,就好像它们是 HTML 的一部分一样。

这似乎仅在页面中有大量 javascript 时才会发生。

该页面看起来或多或少像:

<body>
    ....
    <script type="text/javascript">
        //<![CDATA[
        google.maps.event.clearListeners(window.kgmm["marker32"],"click");
        google.maps.event.addListener(window.kgmm["marker32"],"click",clicked);
        window.kgmp["marker54"]=new InfoBox({
            content: "<div class=\"wrapBox\" align=\"left\"><div class=\"imageBox\"><a href=\"#ir_rih\" target=\"_blank\"><span class=\"imageWrap\">"

/* the issue -> */  +"<img src=\"?ajax=1&cls=owAjaxHandler&mtd=thumbnail&amp;i=wp-content\/uploads\/2011\/07\/Bahrija &amp; Fomm ir-rih08.jpg&amp;w=115&amp;h=115\" border=\"0\" alt=\"\"\/><\/"

                    +"span><\/a><\/div><div class=\"specsBox\"><h2>Fomm Ir-Rih<\/h2><div class=\"shortDesc\"><\/div><a class=\"moreInfo\" href=\"#ir_rih\" onclick=\"return krtShowTabByHash(this);\">more details &raquo;<\/a><\/div><\/div>" ,
            disableAutoPan: false,
            maxWidth: 0,
            pixelOffset: new google.maps.Size(-214, 0),
            zIndex: null
        });
        //]]>
    </script>
    ....
</body>

以下是控制台中的屏幕截图:

截屏


请注意,我不是在寻找修复程序。请不要建议任何改进代码的方法。

而不是修复,我正在寻找关于为什么会发生这种情况的答案。

注意: CDATA 不应该阻止 chrome 将 javascript 内容解析为 XML 元素吗?


导致问题的示例 URL:

  1. 首先,到这里
  2. 打开控制台 ( Right Click -> Inspect Element -> Console tab)
  3. 点击页面列表中的第二个项目,名为“Mdina, Rabat, Dingli & Baħrija”
  4. 在页面加载时继续查看控制台,您应该会看到上述错误。

注意:有人将问题标记为“过于本地化”。我想指出这不是真的。我在多个网站上都遇到过这个问题,但从未考虑过(直到现在),因为该网站仍然有效。

4

1 回答 1

0

我会把钱花在甜甜圈上,问题是你转义了iurl 参数:

src=\"?ajax=1&cls=owAjaxHandler&mtd=thumbnail&amp;i=wp-content\/uploads\/2011\/07\/Bahrija &amp; Fomm ir-rih08.jpg&amp;w=115&amp;h=115\"

基本上,反斜杠转义不适用于 URL。如果您想访问该 URL,则需要将其发送为:

src=\"?ajax=1&cls=owAjaxHandler&mtd=thumbnail&amp;i=wp-content%2Fuploads%2F2011%2F07%2FBahrija%20%26%20Fomm%20ir-rih08.jpg&amp;w=115&amp;h=115\"

克里斯编辑:将其解码为 javascript 字符串将产生:

src="?ajax=1&cls=owAjaxHandler&mtd=thumbnail&amp;i=wp-content/uploads/2011/07/Bahrija &amp; Fomm ir-rih08.jpg&amp;w=115&amp;h=115"
于 2011-10-10T14:26:46.717 回答