我已经使用jQuery将外部网站的内容加载到Div中,但是当我点击加载内容中的链接时,它会打开它自己的页面。有没有办法限制打开页面的链接,同时它仍然包含在Div?
中答案 0 :(得分:0)
我认为,删除它的唯一方法是将所有链接的“href”attr设置为“#”。请在下面找到相同的代码。
$("#div").find("a").attr("href", "#")
希望这很有用!!
答案 1 :(得分:0)
您必须使用iframe
代替div
才能获得简单的解决方案。
或者,由于您说内容来自外部网站,因此我相信您知道如何在不同的domain
内获取内容。你可以试试这个。
$("divContainer a").click(function(e){
//Prevent the default behavior of the link so it will not redirect to href.
e.preventDefault();
var url = this.href;
//Now using this url get the external content and load it into the DIV
});
答案 2 :(得分:0)
那里至少有3个问题:
如果您无权使用这些材料,则可能违反版权法。
安全违规。所有AJAX请求通常必须来自同一台服务器。除非用户和ISP严重降低其安全设置,否则安全功能会将任何其他内容视为恶意代码。
Windows和框架包含网页。 Div标签不是。您必须将文件剥离为仅一些内部正文内容才能将其显示在div中。弹出窗口是一个窗口,而不是div。
使用ShankarSangoli的IFrame建议
这是最好的解决方案。
答案 3 :(得分:0)
您可以删除已加载内容链接::
中的目标属性$("#div").find("a").attr("target", "");
这样可以防止链接在新窗口中打开。
问题但是,如何使用jQuery从其他网站获取内容? 这应该不可能吗?
答案 4 :(得分:0)
你显然应该提供一些源代码,以便为我们提供正在发生的事情的线索。
根据我的经验(自学jquery noob).load的东西有很多问题,有时你用“返回假”来解决它。在所有命令的末尾,以“防止默认”交互。
其他时候你只需要像html标签一样清理代码......它可以是一切,提供代码。