jquery队列只能用于元素事件函数吗?????????

JokerSoulClub 2016-09-07 11:31:19

var $div = $("div");
$div.queue("q", [
function( next ){ alert("队列函数1"); $(this).dequeue("q"); } ,
function( next ){ alert("队列函数2"); $(this).dequeue("q"); } ,
function( next ){ alert("队列函数3"); $(this).dequeue("q"); }
]);

$("#btn").click( function(){
$div.dequeue("q");
} );


这里函数function里不是元素的动画事件函数,队列不起作用啊?????????????用的 是jquery3.0
...全文
111 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复

$(function(){
	$("#btn").click( function(){
	    $div.dequeue("q");
	} );
});
  • 打赏
  • 举报
回复
引用 7 楼 JokerSoulClub 的回复:

$(function(){
	var $div = $("div");
    	$div.queue("q", [
    	                 function( next ){ alert("队列函数1"); $(this).dequeue("q"); } , 
    	                 function( next ){ alert("队列函数2"); $(this).dequeue("q"); } ,
    	                 function( next ){ alert("队列函数3"); $(this).dequeue("q"); }
    	                 ]);
    $("#btn").click( function(){
        $div.dequeue("q");
    } );
});
那就改成这样吧,主要原因是var $div = $("div");这句代码执行时,页面的div还没加载,所以不好用, 全放到$(function(){})里就行了,不担心位置
JokerSoulClub 2016-09-07
  • 打赏
  • 举报
回复
引用 6 楼 u011376884 的回复:
[quote=引用 5 楼 JokerSoulClub 的回复:] 把你用的浏览器,jquery版本,全部代码包括html发一下,谢谢,,
没什么特别的啊

<script src="js/jquery-1.8.2.min.js" type="text/javascript"></script> 
<html>
    <head>
    </head>
    <body>
    <div>
    </div>

	<input type="button" value="test" id="btn">
    </body>
</html>
<script type="text/javascript">
var $div = $("div");
$div.queue("q", [
    function( next ){ alert("队列函数1"); $(this).dequeue("q"); } , 
    function( next ){ alert("队列函数2"); $(this).dequeue("q"); } ,
    function( next ){ alert("队列函数3"); $(this).dequeue("q"); }
]);
  
$(function(){
    $("#btn").click( function(){
        $div.dequeue("q");
    } );
});
</script>
[/quote] 好吧,问题的关键其实是没有用$(document).ready(function(){{}); 汗,,,低级错误啊,,,,但不知为什么没有报错,,,,,,,,,,
JokerSoulClub 2016-09-07
  • 打赏
  • 举报
回复
引用 6 楼 u011376884 的回复:
[quote=引用 5 楼 JokerSoulClub 的回复:] 把你用的浏览器,jquery版本,全部代码包括html发一下,谢谢,,
没什么特别的啊

<script src="js/jquery-1.8.2.min.js" type="text/javascript"></script> 
<html>
    <head>
    </head>
    <body>
    <div>
    </div>

	<input type="button" value="test" id="btn">
    </body>
</html>
<script type="text/javascript">
var $div = $("div");
$div.queue("q", [
    function( next ){ alert("队列函数1"); $(this).dequeue("q"); } , 
    function( next ){ alert("队列函数2"); $(this).dequeue("q"); } ,
    function( next ){ alert("队列函数3"); $(this).dequeue("q"); }
]);
  
$(function(){
    $("#btn").click( function(){
        $div.dequeue("q");
    } );
});
</script>
[/quote] 我知道原因了,你试一下我这个调整位置后的代码,居然是位置问题引起的,,, 很奇怪的bug吧

<html>
    <head>
	<script src="js/jquery-1.8.2.min.js" type="text/javascript"></script>
	<script type="text/javascript">
    var $div = $("div");
     $div.queue("q", [
    function( next ){ alert("队列函数1"); $(this).dequeue("q"); } , 
    function( next ){ alert("队列函数2"); $(this).dequeue("q"); } ,
    function( next ){ alert("队列函数3"); $(this).dequeue("q"); }
    ]);
   
    $(function(){
    $("#btn").click( function(){
        $div.dequeue("q");
    } );
});
</script>
</head>
<body>
<div>
</div>
<input type="button" value="test" id="btn">
</body>
</html>

  • 打赏
  • 举报
回复
引用 5 楼 JokerSoulClub 的回复:
把你用的浏览器,jquery版本,全部代码包括html发一下,谢谢,,
没什么特别的啊

<script src="js/jquery-1.8.2.min.js" type="text/javascript"></script> 
<html>
    <head>
    </head>
    <body>
    <div>
    </div>

	<input type="button" value="test" id="btn">
    </body>
</html>
<script type="text/javascript">
var $div = $("div");
$div.queue("q", [
    function( next ){ alert("队列函数1"); $(this).dequeue("q"); } , 
    function( next ){ alert("队列函数2"); $(this).dequeue("q"); } ,
    function( next ){ alert("队列函数3"); $(this).dequeue("q"); }
]);
  
$(function(){
    $("#btn").click( function(){
        $div.dequeue("q");
    } );
});
</script>
JokerSoulClub 2016-09-07
  • 打赏
  • 举报
回复
引用 3 楼 u011376884 的回复:
[quote=引用 2 楼 JokerSoulClub 的回复:] 按楼上的写也没用啊,,,,估计是queue只能用于animation吧?????????

var $div = $("div");
$div.queue("q", [
    function( next ){ alert("队列函数1"); $(this).dequeue("q"); } , 
    function( next ){ alert("队列函数2"); $(this).dequeue("q"); } ,
    function( next ){ alert("队列函数3"); $(this).dequeue("q"); }
]);
 
$(function(){
    $("#btn").click( function(){
        $div.dequeue("q");
    } );
});
我的好用啊,依次alert了啊[/quote] 把你用的浏览器,jquery版本,全部代码包括html发一下,谢谢,,
JokerSoulClub 2016-09-07
  • 打赏
  • 举报
回复
楼上用的什么浏览器?用的jquery版本呢?
  • 打赏
  • 举报
回复
引用 2 楼 JokerSoulClub 的回复:
按楼上的写也没用啊,,,,估计是queue只能用于animation吧?????????

var $div = $("div");
$div.queue("q", [
    function( next ){ alert("队列函数1"); $(this).dequeue("q"); } , 
    function( next ){ alert("队列函数2"); $(this).dequeue("q"); } ,
    function( next ){ alert("队列函数3"); $(this).dequeue("q"); }
]);
 
$(function(){
    $("#btn").click( function(){
        $div.dequeue("q");
    } );
});
我的好用啊,依次alert了啊
JokerSoulClub 2016-09-07
  • 打赏
  • 举报
回复
按楼上的写也没用啊,,,,估计是queue只能用于animation吧?????????

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧