2

flippy我对带有 jQ​​uery Flippy 插件 http://blog.guilhemmarty.com/flippy/的插件标签有一个小问题

我有一个带p标签的 div

<div id="divID">
<p id="pID" class="someClass">Some text
<a id="aID" href="#">Some text</a> </p>
</div>

和我页面上的事件处理程序

$("#aID").click(function(){
    var content = $("#divID").html();
$("#divID").flippy({
    direction:"LEFT",
    duration: "500",
    verso: content

 });    
});

问题是,当我单击要翻转 div 的元素时,div 被翻转,但单击功能不处理另一次单击。

我只能翻转 div 一次。当我将“a”元素放在 div 之外时,我可以随意翻转,但这不是我的目标。

谁能给我建议。

4

2 回答 2

2

因为我在div中注册的所有事件监听器在翻转div后都不可用,所以我在翻转后重新注册了这个监听器

$(document).on("click", "#element", function(){ do something});

IE:

在我的 JSP 中:`$(document).ready(function() {

$("#register").click(function() {
    switchRegister();

});

$("#forgPass").click(function() {
    forgPass();
});

});`  

在 .js 文件中:

/* * 将登录屏幕切换到注册屏幕 */

函数 switchRegister() { var mainContent = $("#LoginBox").html();

$("#btnLogIn").prop('value', regText);
$("#regProfile").hide();
$("#regPass").hide();

$("#iconName").show();
$("#regText").show();
$("#goBack").show();

var content = $("#LoginBox").html();

$("#LoginBox").flippy({
    direction:"LEFT",
    duration: "500",
    verso: content,
    onFinish: function() {
        $("#goBack").on("click", function(){
            $("#LoginBox").empty();
            backToLogin(mainContent, "right");
        });
    }
 });

}

/* * 返回登录界面 */

功能 backToLogin(内容,方向){

if(direction == "right") {
    console.log("direction RIGHT");
    $("#LoginBox").flippy({
        direction:"RIGHT",
        duration: "500",
        verso: content,
        onFinish: function(){
            $(document).on("click", "#register", function(){
                switchRegister();
            });
            $(document).on("click", "#forgPass", function(){
                forgPass();
            });
        }
     });
} else {
    console.log(" direction Bottom");
    $("#LoginBox").flippy({
        direction:"BOTTOM",
        duration: "500",
        verso: content,
        onFinish: function(){
            $("#register").on("click", function(){
                switchRegister();
            });
            $("#forgPass").on("click", function(){
                forgPass();
            });
        }
     });
}

}

/* * 忘记密码 */ function forgPass() {

var mainContent = $("#LoginBox").html();

$("#btnLogIn").prop('value', passText);
$("#regPass").hide();
$("#regProfile").hide();
$("#iconPass").hide();
$("#regText").hide();
$("#goBack").show();

var content = $("#LoginBox").html();

$("#LoginBox").flippy({
    direction:"TOP",
    duration: "500",
    verso: content,
    onFinish: function() {
        $("#goBack").on("click", function(){
            $("#LoginBox").empty();
            backToLogin(mainContent, "bottom");
        });
    }
 });

}

于 2013-06-26T06:14:00.720 回答
0

尝试jQuery FlipGit Hub URL

于 2013-06-25T06:29:16.450 回答