Javascript jQuery插件可以通过控制台触发,但不能通过函数触发——为什么?
我有一个神秘的JS问题:我用一个函数激活不同的jQuery插件。它的名字是这样的:Javascript jQuery插件可以通过控制台触发,但不能通过函数触发——为什么?,javascript,jquery,activation,Javascript,Jquery,Activation,我有一个神秘的JS问题:我用一个函数激活不同的jQuery插件。它的名字是这样的: <script> postAjaxCalls(); </script> function postAjaxCalls() { jQuery("[title]").tooltip(); alert("this works great, tooltip not!"); jQuery("select").selectbox(); } 当我重新加载页面时,除了工具提
<script>
postAjaxCalls();
</script>
function postAjaxCalls() {
jQuery("[title]").tooltip();
alert("this works great, tooltip not!");
jQuery("select").selectbox();
}
当我重新加载页面时,除了工具提示插件,其他一切都可以正常工作。现在,如果我将完全相同的代码发送到JS控制台,插件将被激活:
jQuery("[title]").tooltip();
为什么?为什么它在通过控制台激活时工作,但在通过功能激活时不工作
干杯 在
$(document).ready(function(){..})
中尝试您的代码,简而言之$(function(){..})
在DOM就绪后执行您的代码
jQuery(document).ready(function() {
function postAjaxCalls() {
jQuery("[title]").tooltip();
alert("this works great, tooltip not!");
jQuery("select").selectbox();
}
postAjaxCalls();
});
或者简言之
jQuery(function() {
function postAjaxCalls() {
jQuery("[title]").tooltip();
alert("this works great, tooltip not!");
jQuery("select").selectbox();
}
postAjaxCalls();
});
在
$(document).ready(function(){..})
中尝试您的代码,简言之$(function(){..})
在DOM就绪后执行代码
jQuery(document).ready(function() {
function postAjaxCalls() {
jQuery("[title]").tooltip();
alert("this works great, tooltip not!");
jQuery("select").selectbox();
}
postAjaxCalls();
});
或者简言之
jQuery(function() {
function postAjaxCalls() {
jQuery("[title]").tooltip();
alert("this works great, tooltip not!");
jQuery("select").selectbox();
}
postAjaxCalls();
});
在DOM准备就绪之前,您可能正在调用
postAjaxCalls
。当您从控制台调用它时,DOM已准备就绪,因此它可以工作
试试这个:
$(function(){
postAjaxCalls();
});
在DOM准备就绪之前,您可能正在调用
postAjaxCalls
。当您从控制台调用它时,DOM已准备就绪,因此它可以工作
试试这个:
$(function(){
postAjaxCalls();
});
试着把它放进一个文档中。readysee对codeparadox的评论:无论如何都要得到它?!试着把它放进一个文档中。readysee对codeparadox的评论:无论如何都要得到它?!这是自相矛盾的:我在另一个项目中也遇到了这个问题。我使用了您的建议(jQuery(function(){..})),但在执行$('.datepicker').datepicker()之前,它仍然不起作用;在控制台里!?这是自相矛盾的:我在另一个项目中也遇到了这个问题。我使用了您的建议(jQuery(function(){..})),但在执行$('.datepicker').datepicker()之前,它仍然不起作用;在控制台里!?