Javascript &引用;可拖动不是一个函数;当在另一个函数中时
我试图在用户单击按钮时激活jqueryui.draggable函数。脚本包括在内并正常,因为当我使用以下代码时,一切都正常工作:Javascript &引用;可拖动不是一个函数;当在另一个函数中时,javascript,jquery,jquery-ui,Javascript,Jquery,Jquery Ui,我试图在用户单击按钮时激活jqueryui.draggable函数。脚本包括在内并正常,因为当我使用以下代码时,一切都正常工作: <script> function test() { $( ".bord" ).draggable({ containment: ".rom", scroll: false }); } test() </script> 功能测试(){ $(“.bord”).draggable({containment:.rom”,scroll:false}
<script>
function test() {
$( ".bord" ).draggable({ containment: ".rom", scroll: false });
}
test()
</script>
功能测试(){
$(“.bord”).draggable({containment:.rom”,scroll:false});
}
测试()
那么.bord类是可拖动的。但我希望它只有在单击按钮时才可拖动,因此我使用以下代码:
<script>
function test() {
$( ".bord" ).draggable({ containment: ".rom", scroll: false });
}
$("#bordplassering").click(function() {
test();
});
</script>
功能测试(){
$(“.bord”).draggable({containment:.rom”,scroll:false});
}
$(“#bordplassering”)。单击(函数(){
test();
});
现在问题开始了。。。这给了我以下错误:
“类型错误:$(…)。可拖动不是一个函数”
为什么 请这样使用:(您必须在document.ready函数中移动您的单击函数)
功能测试(){
$(“.bord”).draggable({containment:.rom”,scroll:false});
}
$(文档).ready(函数(){
$(“#bordplassering”)。单击(函数(){
test();
});
});
请这样使用:(您必须在document.ready函数中移动您的单击函数)
功能测试(){
$(“.bord”).draggable({containment:.rom”,scroll:false});
}
$(文档).ready(函数(){
$(“#bordplassering”)。单击(函数(){
test();
});
});
尝试以下结构:
<script>
$(function() {
$(".bord").draggable({containment: ".rom", scroll: false});
});
</script>
$(函数(){
$(“.bord”).draggable({containment:.rom”,scroll:false});
});
但在开始之前:
<script>
$(function() {
$(".bord").draggable({containment: ".rom", scroll: false});
});
</script>
$(函数(){
$(“.bord”).draggable({containment:.rom”,scroll:false});
});
但在开始之前:
此外,你还应该阅读和 我建议只在开始时应用Dragble功能,单击可以使用enable和disable方法使其无法和disable 使用document.ready
$(document).ready(function() {
$( ".bord" ).draggable({ containment: ".rom", scroll: false });
$( ".bord" ).draggable( "disable" );
$("#bordplassering").click(function() {
$(".bord").draggable( "enable" );
});
});
我建议只在开始时应用draggable函数,单击可以使用enable和disable方法使其无法和禁用 使用document.ready
$(document).ready(function() {
$( ".bord" ).draggable({ containment: ".rom", scroll: false });
$( ".bord" ).draggable( "disable" );
$("#bordplassering").click(function() {
$(".bord").draggable( "enable" );
});
});
谢谢大家的帮助。正如在这里的评论中指出的,问题是jQuery第二次加载到footer.php-file中
当然还有很多改进代码的好主意。谢谢大家的帮助。正如在这里的评论中指出的,问题是jQuery第二次加载到footer.php-file中
当然还有很多改进代码的好主意。您是否在html中添加了jquery ui?只是看起来代码中的其他地方将其从jquery中删除了。也许您不止一次包含jQuery,而且是包含jQuery UI之后的最后一次。或者可能只是
$
不再指jquery,实际上这就是问题所在-谢谢!jQuery第二次被加载到footer.php文件中,并与一些基础文件一起加载。谢谢大家!您是否在html中添加了jquery ui?看起来就像代码中的其他地方将其从jquery中删除一样。也许您不止一次包含jQuery,而且是包含jQuery UI之后的最后一次。或者可能只是$
不再指jquery,实际上这就是问题所在-谢谢!jQuery第二次被加载到footer.php文件中,并与一些基础文件一起加载。谢谢大家!