我需要确保用户在提交之前必须点击外部链接(弹出新页面)。
有一种简单的方法可以在所有主流浏览器上运行吗?
更新:可能有几个动态生成的链接。需要确保每个人都被点击
答案 0 :(得分:2)
声明一个全局变量:
window.clicked = false;
然后在链接的onclick上,执行以下操作:
<a href="some external link" onclick="clicked=true;">Hi</a>
现在,如果用户点击了外部链接,则clicked
会有true
其他false
。
基于此,做你的逻辑
答案 1 :(得分:2)
这对你有帮助吗?这是一个 FIDDLE 。
<input type="submit" name="submit" value="Submit" disabled>
$(function() {
// For demo purposes
$('body').prepend('<a href="http://google.com" class="ext">Google</a>' +
'<a href="http://google.com" class="ext">Google</a>' +
'<a href="http://google.com" class="ext">Google</a>' +
'<a href="http://google.com" class="ext">Google</a>' +
'<a href="http://google.com" class="ext">Google</a>');
$(document).on('click','.ext', function() {
$(this).toggleClass('ext','clicked');
if($('.ext').length === 0) {
$('input[name="submit"]').prop('disabled',false);
}
});
});