【问题标题】:Load external content in div & manipulate dom在 div 中加载外部内容并操作 dom
【发布时间】:2015-06-09 16:46:09
【问题描述】:

我想要的是将外部内容(来自不同的域名)加载到 div 中并操作此外部加载内容的 dom。 例如,我加载了一个 div bbc.com,我希望能够选择此页面中的所有“a”标签链接。 这是我在jscribble 中完成的一个示例

$(document).ready(function(){

$('#wrap').contents().find('iframe').mouseenter(function() {
    $('a').hide();
});  
});

在这个 JScribble 中,我只是尝试使用 .hide() 函数使“a”标签做出反应,以查看是否找到了“标签”。但由于跨域安全,似乎没有找到它。

所以我不再确定 iframe 是解决方案。

还有其他方法可以在 div 中加载外部内容并操作 dom 吗? (外部内容有不同的域名)

【问题讨论】:

    标签: jquery dom iframe cross-domain


    【解决方案1】:

    不能使用跨域操作,你需要调用 iframe 内容到你的域名...

    如果你的文件是html,那么你应该试试这个

    $(文档).ready(函数(){ $(文档).ready(函数($) { var tmp = $('#wrap iframe').contents().find('html').mouseenter(function() { $('a').hide(); }); // 警报(tmp);用于调试 }); });

    当鼠标进入锚标记时,该标记将消失(隐藏)!鼠标退出时也可以这样做,您可以将其显示回来...

    【讨论】:

    【解决方案2】:

    由于same origin policy,您无法使用跨域 iframe 执行操作。您可以做的是获取 iframe 内容服务器端并将其作为来自您自己的域的服务。

    这些链接可能对cors,phantom有帮助

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-13
      • 1970-01-01
      • 2012-06-04
      • 1970-01-01
      • 2012-10-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多