【问题标题】:Why does ExpressionEngine seem to remove the src URL from an iframe client-side?为什么 ExpressionEngine 似乎从 iframe 客户端删除了 src URL?
【发布时间】:2013-11-07 16:00:24
【问题描述】:

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,但我找不到它。我已经使用 Google 搜索并搜索了遇到相同问题的人,但没有成功。

有问题的网址是: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 代码来破坏该站点并导致这一切问题。现在找到罪魁祸首!

【问题讨论】:

    标签: javascript html iframe expressionengine


    【解决方案1】:

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

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-13
      • 1970-01-01
      • 2014-03-08
      • 2022-01-04
      • 1970-01-01
      相关资源
      最近更新 更多