0

ExpressionEngine 似乎正在从 iframe 的源 URL 中剥离一些参数。这发生在浏览器中,而不是服务器上。

当我查看相关页面的 HTML 源代码时,iframe 源代码是正确的。当我在控制台中查看它时,它与 HTML 源中的不一样。

元素控制台显示:

<iframe frameborder="0" height="166" scrolling="no" src="http://w.soundcloud.com/player/?wmode=transparent" width="100%"></iframe>

HTML 源代码显示:

<iframe frameborder="0" height="166" scrolling="no" src="http://w.soundcloud.com/player/?url=http%3A//api.soundcloud.com/tracks/112438993&amp;color=ff6600&amp;auto_play=false&amp;show_artwork=true" width="100%"></iframe></div>

如果我在浏览器的元素控制台中手动更改源,iframe 加载没有问题。

我在想象有一些 javascript 正在剥离 src,但我找不到它。我用谷歌搜索和搜索遇到同样问题的人,但没有成功。

有问题的网址是:http ://rebelnoise.com/articles/album-debut-in-december-for-irish-garage-popsters-dott

这发生在所有 soundcloud 和 spotify 链接上。

Spotify 示例:http ://rebelnoise.com/articles/black-flags-what-the-the-bands-first-album-of-new-material-since-1985

谢谢!

编辑:

  1. 凭直觉,我尝试将源 URL 从 https:// 更改为 // --- 仍然没有运气。
  2. 我注意到 wmode=transparent 查询字符串存在于控制台中,而不是源代码中......我想知道 Javascript 函数是否被透明查询字符串覆盖,因此尝试将其添加到我的完整 URL 中,如下所示:

    <iframe frameborder="0" height="166" scrolling="no" src="//w.soundcloud.com/player/?wmode=transparent&url=//api.soundcloud.com/tracks/112438993&amp;color=ff6600&amp;auto_play=false&amp;show_artwork=true" width="100%"></iframe>
    
  3. 有趣:我尝试将整个页面和资源保存到我的桌面,并以这种方式运行它——一切似乎都正常,所以我很困惑。
  4. 我更接近于发现问题——似乎 wmode=transparent 正在整个 DOM 中添加到 src 中,所以我想知道过去是否有一些虚拟添加了错误的 javascript 代码来破坏这个站点并导致所有这些问题。现在找到罪魁祸首代码!
4

1 回答 1

0

好吧,我觉得自己像个笨蛋——应该早点找到模式。

页脚中有一些代码将 wmode=transparent 添加到所有 src 文件——它没有附加到任何存在的查询,它只是用新的查询字符串替换它们。

我删除了该代码,现在一切正常。

于 2013-11-07T17:31:14.513 回答