jQuery .load()方法在新窗口中打开html,而不是将其加载到指定的容器中

时间:2015-08-19 11:39:18

标签: jquery html

问题是,当我从服务器加载页面并立即点击<ul>菜单中的链接时,而不是在#stores-container内加载请求的html,它会打开新窗口,但是如果我等了大约5-10秒才能完全加载页面,没有问题。

jQuery的:

 $('.countries-menu ul li a').on('click', function(e) {                 
  e.preventDefault();                                
  var url = this.href;
  $('.countries-menu ul li a').attr('id', '');
  $(this).attr('id', 'country-selected');                        
  $('#stores-container').empty();  
  $('#stores-container').load(url);             
    });

HTML:

<p class="message">Select your country</p>                
<div class="countries-menu">
    <ul>
       <li><a href="Stores/Australia.html">AUSTRALIA<span>&gt;</span></a></li>
       <li><a href="Stores/Brasil.html">BRASIL<span>&gt;</span></a></li>
       <li><a href="Stores/France.html">FRANCE<span>&gt;</span></a></li>
       <li><a href="Stores/Germany.html">GERMANY<span>&gt;</span></a></li>
       <li><a href="Stores/United-States.html">UNITED STATES<span>&gt;</span></a></li>
    </ul>
</div> 

<div id="stores-container">
</div>         

1 个答案:

答案 0 :(得分:0)

将你的js代码包括在内:

com.sun.management.jmxremote.port=8002

$(document).ready(function(){ $('.countries-menu ul li a').on('click', function(e) { e.preventDefault(); var url = this.href; $('.countries-menu ul li a').attr('id', ''); $(this).attr('id', 'country-selected'); $('#stores-container').empty(); $('#stores-container').load(url); }); }); 等待页面DOM加载并且您的页面已准备好运行javascript代码......