【问题标题】:Animate div on click, Load Content into div单击动画 div,将内容加载到 div
【发布时间】:2023-03-09 03:01:01
【问题描述】:

我正在使用以下 jQuery 尝试淡出 div,加载 HTML 页面,然后淡入。淡入工作正常,但似乎没有加载 HTML,我没有很确定我错过了什么。第一个功能是在最初访问该网站时尝试将我的第一页加载到 div 中。

jQuery

$(document).ready(function() {

    $("#Content").load("Landing.html");

});

$(document).ready(function() {

    $("a").click(function(event){
        event.preventDefault();
        linkLocation = this.href;
        $("#Content").fadeOut(500);  
        $("#Content").load("linkLocation"); 
        $("#Content").fadeIn(500); 
    });

});

HTML 的基本概念

<ul>
        <li>
          <a href="Contact.html">contact</a>
       </li>  

       <li>
          <a href="Portfolio.html">portfolio</a>
       </li>

        <li>
          <a href="Services.html">services</a> 
        </li> 

       <li>
          <a href="About.html">about</a>
       </li>

       <li>
          <a href="Landing.html">home</a>
       </li>      
     </ul>

<div id="Content"></div>

感谢您的帮助!

编辑

感谢所有建议。我已经尝试了它们中的每一个,但仍然没有运气。我一定错过了一些非常简单的东西,但我就是看不到 ATM。

【问题讨论】:

  • 您是否检查了文件的路径、文件名(大小写等)。作为旁注,您只需要一个文档准备功能。
  • 嗨,adeno,感谢您的建议!我一遍又一遍地检查,但仍然没有运气。另外,FWIW,如果我删除 preventDefault,它会将我带到正确的页面。

标签: jquery html dynamic-content


【解决方案1】:

linkLocation location 是一个变量而不是字符串,所以不应包含在""

$(document).ready(function() {

    $("a").click(function(event){
        event.preventDefault();
        var linkLocation = this.href;
        $("#Content").fadeOut(500);  
        $("#Content").load(linkLocation ); 
        $("#Content").fadeIn(500); 
    });

});

【讨论】:

  • 不应该 this.hrefthis.attr('href') 吗?整个事情可以包装在一个文档就绪函数中。
  • @rogMaHall 两者都可以工作,this.href 将读取href dom 元素的href 属性。试试jsfiddle.net/arunpjohny/J4E4c/1
  • 你的权利,但是this.href 将检索完整的目标网址,而this.attr('href') 只会带回标记中写入的内容。这是一个很好的 SO 线程 - this.href vs $(this).attr('href')。不确定 OP 是否有偏好,但很高兴知道 :)
  • 谢谢!仍然没有运气。一定是我的扩展代码中缺少的一些愚蠢的东西。
  • 你确定点击处理程序被调用
【解决方案2】:

为了获得最佳结果,您应该链接调用以确保在另一个触发之前完成一个调用:

  $("#Content").fadeOut(500, function () {
        $("#Content").load(linkLocation, function () {
            $("#Content").fadeIn(500)
        });
    });

是的,按照上面的建议修复链接属性问题。

【讨论】:

  • 链接调用的好处。我会记住这一点。我试过了,但仍然没有运气。还尝试了链接 attr 建议,但没有运气。
猜你喜欢
  • 1970-01-01
  • 2012-01-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-02-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多