quik flip plugin的jquery问题

问题描述

| 我有一个名为quikflip的jquery插件有问题。基本上,插件可以翻转图像,例如翻转卡片。我正在用它来翻转一张卡片的图像列表,我有20张卡片,效果很好,但是我只想翻转3张卡片并停止显示警报并转到下一个网址。 我是jquery的新手,不知道该怎么做,我试图做出反击,但没有成功。 这是我尝试的:
function count() {
  var n = $(\'quickFlip\').length;
  if(n > 3){
   Alert(\'only 3\' );
  }
  else {
   $(\'.quickFlip\').quickFlip();
  //
  }
}

$(\'.quickFlip\').click(countChecked);
插件功能如下所示:
$(function() {
    $(\'.quickflip\').quickFlip();
});
插件代码位于http://jonraasch.com/blog/quickflip-2-jquery-plugin。 我只复制了代码,没有显示任何警报。我有一个脚本,每次单击该卡时,我都不知道它是否干扰了我发送信息的代码
 <script> $(document).ready(function(){ $(\".element\").click(function () {


    var cururl = document.location.href;
     var path = $(this).attr(\'title\') ; 
    var cardid = $(this).attr(\'id\') ;
     $.get(\'ajaxprocess.PHP\',{Path: path,url: cururl,cardid:cardid},function(data){ 

    $(\'#test\').text(data);});
    });
    }); 
    </script>
元素就像是
<div class=\"quickFlip\"> <div class=\"element\" id= \"id\" title =\"title\">
<a href=\"#\" class=\"quickFlipCta\"> </a>
</div>
 the code for fliping is Now like
 <script type=\"text/javascript\">
 $(function() { $(\'.quickflip\').quickFlip(); }); 
$(function() { 
var timesFlipped = 0; 
var threshold = 3; $(\'.quickflip\').quickFlip().click(function() {
 if(timeFlipped++ >= threshold) { alert(\"Redirecting\"); // do more stuff }});
}); 
</script>
我究竟做错了什么 ?     

解决方法

        无需查看插件的代码,我认为最简单的解决方案是将另一个
.click()
事件绑定到您的
$(\'.quickflip\')
,跟踪用户“翻转”了多少次,然后执行n次操作。喜欢:
$(function() {

   var timesFlipped = 0;
   var threshold = 3;

   $(\'.quickFlip\').quickFlip().find(\'.quickFlipCta\').click(function() {
         if(++timesFlipped >= threshold) {
            alert(\"Redirecting\");
            // do more stuff
         }
      });
});
基本的工作示例:http://jsfiddle.net/sMYzS/8/ 更多信息:
$(\'.quickFlip\').quickFlip();
实际上似乎并没有进行翻转,它只是设置了翻转功能(将事件绑定到容器等)。所以你
else {
   $(\'.quickFlip\').quickFlip();
}
似乎是错误的方法。基本上,在调用函数时您正在做的是
if there are more than 3
   alert something
else 
   initialize the quickflip functionality
希望这可以帮助。