jQuery在Div中加载外部内容,链接问题

jQuery在Div中加载外部内容,链接问题,jquery,loading,external,Jquery,Loading,External,我已经使用jQuery将外部站点的内容加载到Div中,但是当我单击加载内容中的链接时,它会作为自己的页面打开。有没有一种方法可以限制链接在仍包含在Div中的情况下打开页面?删除该链接的唯一方法是将所有链接的“href”attr设置为“#”。请在下面找到相同的代码 $("#div").find("a").attr("href", "#") 希望这是有用的 您必须使用iframe而不是div来获得简单的解决方案 或者,由于您说内容来自外部站点,我相信您知道如何跨不同的域获取内容。你可以试试这个 $

我已经使用jQuery将外部站点的内容加载到Div中,但是当我单击加载内容中的链接时,它会作为自己的页面打开。有没有一种方法可以限制链接在仍包含在Div中的情况下打开页面?

删除该链接的唯一方法是将所有链接的“href”attr设置为“#”。请在下面找到相同的代码

$("#div").find("a").attr("href", "#")

希望这是有用的

您必须使用
iframe
而不是
div
来获得简单的解决方案

或者,由于您说内容来自外部站点,我相信您知道如何跨不同的
获取内容。你可以试试这个

$("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

});

您至少有3个问题:

  • 如果您没有使用这些材料的许可,可能会违反版权法

  • 违反安全规定。所有AJAX请求通常必须来自同一台服务器。除非用户和ISP严格降低其安全设置,否则安全功能会怀疑其他任何内容是恶意代码

  • 窗口和框架用于包含网页。Div标记不可用。您必须将文件剥离到某些内部主体内容,才能将其显示在div中。弹出窗口是一个窗口,而不是div

  • 使用ShankarSangoli的IFrame建议


    这是最好的解决方案。

    您只需删除已加载内容链接中的target属性即可:

    $("#div").find("a").attr("target", "");
    
    这将防止链接在新窗口中打开

    问题是,您如何使用jQuery从另一个站点获取内容?
    这应该是不可能的?

    您显然应该提供一些源代码,以便我们了解发生了什么

    根据我的经验(自学的jquerynoob)..load有很多问题,有时在所有命令的末尾使用“return false;”来解决它,以“防止默认”交互


    其他时候你只需要清理代码,比如html标签。。。可以是所有内容,提供代码。

    您能提供相关页面的链接吗?这听起来可能是一些事情,但很难说没有看到它。我想OP是想说他想在div中打开链接,而不是完全禁用链接。