2014-02-10 48 views
-1

我如何让jQuery加载一次,我点击按钮。到目前为止,它在加载页面时加载。我希望它在点击按钮后加载!我尝试了很多东西,他们没有工作,到目前为止请帮助...单击按钮时如何获取jQuery加载?

这个到目前为止我的代码为它

<a href="#image_link" title="PutLockerMedia" id="click">watch</a> 
<div style="display:none"> 
    <div id="image_link"> 
    <div class="imageWrapper"> 
     <div class="image"> 
    <iframe src="http://www.putlocker.com/embed/E25FA20CE8643E5F" width="600" height="360" frameborder="0" scrolling="no"></iframe> 
     </div> 
    </div> 
    </div> 
</div> 


<script type="text/javascript"> 
    $(document).ready(function(){ 
     $("#click").fancybox({'scrolling': 'no','titleShow': false,'onClosed': 
     function(){$("#login_error").hide();}}); 
    }); 
</script> 
+0

你不需要在重复问题并重新开始 – JFK

回答

0

如果要动态加载的jQuery您按一下按钮(它请你解释“为什么”要做到这一点),那么你可以使用这样的函数加载它:

function loadScript(sScriptSrc, oCallback) { 
    var oHead = document.getElementsByTagName('head')[0]; 
    var oScript = document.createElement('script'); 
    oScript.type = 'text/javascript'; 
    oScript.src = sScriptSrc; 
    // most browsers 
    oScript.onload = oCallback; 
    // IE 6 & 7 
    oScript.onreadystatechange = function() { 
     if (this.readyState == 'complete') { 
      oCallback(); 
     } 
    } 
    oHead.appendChild(oScript); 
} 

请注意,您的其他jQuery代码不能被前跑后jQuery是加载。您的代码看起来是这样的:

<a href="#image_link" title="PutLockerMedia" id="click">watch</a> 
<div style="display:none"> 
    <div id="image_link"> 
    <div class="imageWrapper"> 
     <div class="image"> 
    <iframe src="http://www.putlocker.com/embed/E25FA20CE8643E5F" width="600" height="360" frameborder="0" scrolling="no"></iframe> 
     </div> 
    </div> 
    </div> 
</div> 


<script type="text/javascript"> 
function loadScript(sScriptSrc, oCallback) { 
    var oHead = document.getElementsByTagName('head')[0]; 
    var oScript = document.createElement('script'); 
    oScript.type = 'text/javascript'; 
    oScript.src = sScriptSrc; 
    // most browsers 
    oScript.onload = oCallback; 
    // IE 6 & 7 
    oScript.onreadystatechange = function() { 
     if (this.readyState == 'complete') { 
      oCallback(); 
     } 
    } 
    oHead.appendChild(oScript); 
} 
function jQueryLoaded() { 
     $("#click").fancybox({'scrolling': 'no','titleShow': false,'onClosed': 
     function(){$("#login_error").hide();}}); 
    }); 
} 

document.getElementById("myButton").addEventListener("click", function() { 
    // load jQuery and when it's loaded, call jQueryLoaded 
    loadScript("jquery.js", jQueryLoaded); 
}, false); 

</script> 

其他参考答案:

How to know if JQuery has finished loading

Javascript multiple Dynamic Insertion

0

试试这个

<script type="text/javascript"> 
    $(document).ready(function(){ 
     $("#click").click(function fancybox(){ 
          'scrolling': 'no', 
          'titleShow': false, 
          'onClosed': function(){ 
             $("#login_error").hide(); 
             } 
     }); 
    }); 
</script> 
相关问题