Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/446.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 尝试使用jQuery将另一个html页面加载到div中。我看了其他的帖子,但我的帖子仍然不是;行不通_Javascript_Jquery_Html_Load - Fatal编程技术网

Javascript 尝试使用jQuery将另一个html页面加载到div中。我看了其他的帖子,但我的帖子仍然不是;行不通

Javascript 尝试使用jQuery将另一个html页面加载到div中。我看了其他的帖子,但我的帖子仍然不是;行不通,javascript,jquery,html,load,Javascript,Jquery,Html,Load,请看一看。编辑:这里有一个链接,指向整个代码的提琴: 这是jQuery的一部分(上面的一切似乎都很好)。我正在尝试让portfolio.html显示在#portfolio div中(在单击链接之前,它是不可见的)。portfolio.html在目录中的同一个文件夹中,因此我不必担心链接 $("#portfolio_link").click(function(){ $(".header").hide(); $("#about").hide(); $("#portfo

请看一看。编辑:这里有一个链接,指向整个代码的提琴:

这是jQuery的一部分(上面的一切似乎都很好)。我正在尝试让portfolio.html显示在#portfolio div中(在单击链接之前,它是不可见的)。portfolio.html在目录中的同一个文件夹中,因此我不必担心链接

    $("#portfolio_link").click(function(){
    $(".header").hide();
    $("#about").hide();
    $("#portfolio").show();
    $("#portfolio").load("portfolio.html");

});
我在html中为它设置了一个div,如下所示

<div id="portfolio">ooh blah dee</div>

你考虑过使用iFrame吗?如果我正确理解了您的问题,您只需使用
.toggle()

例如:

编辑: 至于当前的代码,我真的需要看到一些更多的信息,因为您的代码出现,在一个简单的形式无论如何,正确。运行事件时,能否提供您的文件结构或dev tools中networking选项卡的结果?或者甚至在你的
.load()
上试一试:


但是,重要的是要记住,
.load()
是一个ajax调用,因此每次运行显示方法时,都是通过ajax而不是一次性iframe渲染视图

Hmm,问题可能是#portfolio_link元素是在您尝试附加事件侦听器之后在DOM中创建的。这可以通过将事件侦听器附加到“body”标记并向下过滤到与“#portfolio_link”DOM选择器匹配的子项上的任何单击事件来解决

试试这个:

$('body').on('click', '#portfolio_link', function(){
    $('.header').hide();
    $('#about').hide();
    $('#portfolio').show();
    $('#portfolio').load('portfolio.html');
});
Jquery在链中工作。 也尝试先加载,然后隐藏。 您可以使用Firebug或Chrome devoper工具查看吗
DOM发生了什么事?

谢谢——可能会尝试一下,但也希望能够编写出我目前拥有的代码,因为它看起来应该可以工作。我想知道我在当前代码中犯了什么错误,以便下次知道。这个想法很有趣。我尝试了这段代码,但仍然不起作用:(然而,也许你对事情发生的顺序是正确的。我还尝试在单击事件行之前在顶部写加载行。我添加了一条警告消息,只是想看看我是否通过了,警告消息会弹出,但在指定的分区中仍然没有网页。
$( "#portfolio" ).load( "portfolio.html", function() {
  alert( "Load was performed." );
});
$('body').on('click', '#portfolio_link', function(){
    $('.header').hide();
    $('#about').hide();
    $('#portfolio').show();
    $('#portfolio').load('portfolio.html');
});