如果当前用户是访客,我想运行 avgrund 插件,否则我想运行另一段代码。
到目前为止,我的代码如下所示:
<html>
<head>
<link rel="stylesheet" href="http://labs.voronianski.com/jquery.avgrund.js/avgrund.css">
<link rel="stylesheet" href="http://labs.voronianski.com/jquery.avgrund.js/style.css">
</head>
<body>
<a href="#" id="reply1" class="replyButton">
<span>reply</span>
</a>
<script src="https://code.jquery.com/jquery-3.2.1.min.js"> </script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.avgrund/1.3.3/jquery.avgrund.js"></script>
<script>
$(function() {
var username = "Visitor";
$(".replyButton").on('click', function(e) {
if (typeof username !== 'undefined') {
if (username !== 'Visitor') {
console.log("Do some stuff");
}
else {
var selectedButton = $(this).attr('id');
selectedButton = '#' + selectedButton;
$(selectedButton).avgrund();
}
}
});
});
</script>
</body>
</html>
但问题是两次单击后会打开弹出窗口。我应该如何让代码在第一次点击时运行。
这是 js 小提琴演示:
更新:
我尝试了这种方法,对于这个小例子来说似乎效果很好。
$(document).avgrund({
openOnEvent: true
});
更新了 jsfiddle 演示:
https://jsfiddle.net/sv1mmn6q/1/
但实际上使 avgrund 插件在点击事件时激活。例如,如果您单击主页,它会激活 avgrund 插件。这是意外的行为。