0

这是我目前的设置。我想在主页上显示一次消息而不是 href 链接。最新更新。我相信听众没有运气:

<script>
function reset() {
    $("#toggleCSS").attr("href", "../themes/alertify.default.css");
    alertify.set({
        labels: {
            ok: "OK",
        },
        delay: 5000,
        buttonFocus: "ok"
    });
}

// ==============================
// Standard Dialogs


var listener = function(e) {
    e.preventDefault();
    $('#el').off(listener);


    $(document).ready(function() {
        reset();
        alertify.alert("Message en français ici / Message en anglais ici");
        return false;
    });

};
$('#el').on('click', listener);
</script>
4

2 回答 2

2

替换你的代码

  $("#alert").on( 'click', function () {
    reset();
    alertify.alert("Message en français ici / Message en anglais ici");
    return false;
});

通过下面的代码。

  $(document).ready(function() {
    reset();
    alertify.alert("Message en français ici / Message en anglais ici");
    return false;
});

这样这将在页面加载时显示警报

于 2014-08-13T13:23:54.170 回答
1

如果您希望只执行click一次 -triggered 行为,然后让#alert行为正常使用该$.one('click', ...)方法。

还要确保通过使用来防止默认行为event.preventDefault()

这将在第一次使用后自动删除侦听器。

以下两个是等价的

var listener = function (e) { 
    e.preventDefault();
    $('#el').off(listener);
    /* your logic */
};
$('#el').on('click', listener);

var listener = function (e) { 
    e.preventDefault();
    /* your logic */
};
$('#el').one('click', listener);

编辑

如果您希望在页面加载时执行逻辑,请使用$(document).ready监听器

于 2014-08-13T13:11:46.660 回答