我正在尝试使用我的注销按钮触发两个动作。首先是简单地退出系统,然后我希望它使用我的jQuery来发出警报,我希望它保持3秒然后消失。它目前正在运行,但很快就消失了。我必须在href =位中添加“#”,它会取消已经将用户登出系统的操作。我正在使用Silverstripe SS模板文件进行参考。有没有办法在“{Link}注销”中添加“#”而不会破坏它?这是在测试服务器上,所以没有小提琴,对不起......
当我将其添加到锚点时,警报正常工作,但之后不会注销:
href="# {$Link}logout"
当前不褪色的HTML:
<a href="{$Link}logout" id="show-my-alert" class="btn btn-default btn-menu-donate-offcanvas btn-side">
<i class="fa fa-sign-out fa-fw"></i><br><span class="donate-text"> SIGN OUT</a>
<div id="my-alert" class="alert alert-warning hidden" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
<strong>Warning!</strong> You are now logged out of the system.
的jQuery
<script>
$("#show-my-alert, .close").click(function() {
$("#my-alert").toggleClass("hidden").fadeIn(3000);
$("#my-alert").fadeOut(3000);
});
</script>
现在使用的最终脚本:
$(function () {
$("#show-my-alert, .close").click(function(e) {
var isClosing = $("#my-alert").data("isClosing");
if (isClosing === undefined || isClosing != true) {
$("#my-alert").toggleClass("hidden").fadeOut(3000, function() {
$("#my-alert").data("isClosing", true);
});
e.preventDefault(); // prevent logout during fading
} else {
// this time logout
}
});
});
答案 0 :(得分:1)
我不知道您使用的产品,但我可以做简单的jQuery(我希望这可以帮到您):
$(function () {
$("#show-my-alert, .close").click(function(e) {
var isClosing = $("#my-alert").data('isClosing');
if (isClosing === undefined || isClosing != true) {
$("#my-alert").toggleClass("hidden").fadeOut(3000, function() {
$("#my-alert").fadeIn(3000, function() {
document.getElementById("show-my-alert").click();
});
$("#my-alert").data('isClosing', true);
});
e.preventDefault(); // prevent logout during fading
} else {
// this time logout
}
});
});
&#13;
.hidden {
visibility: hidden;
}
&#13;
<script src="https://code.jquery.com/jquery-1.12.1.min.js"></script>
<a href="{$Link}logout" id="show-my-alert" class="btn btn-default btn-menu-donate-offcanvas btn-side">
<i class="fa fa-sign-out fa-fw"></i><br><span class="donate-text"> SIGN OUT</a>
<div id="my-alert" class="alert alert-warning hidden" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
<strong>Warning!</strong> You are now logged out of the system.
</div>
&#13;