禁用链接单击,直到页面加载完毕
Disable link clicking until page is loaded
我有这样的链接:
<?php echo
anchor("$controller_name/cleanup",
'<i class="fa fa-undo hidden-lg fa fa-2x tip-bottom" data-original-title="'.lang('items_cleanup_old_items').'"></i><span class="visible-lg">'.lang("items_cleanup_old_items").'</span>',
array('id'=>'cleanup',
'class'=>'btn btn-warning','title'=>lang("items_cleanup_old_items")));
?>
我在$(document).ready()
中有 javascript,它绑定到锚点并覆盖单击成为 ajax 调用函数,并event.preventDefault();
阻止链接被导航到。
我遇到的问题是,如果页面还没有完全加载并且他们单击链接; 他们转到ajax页面(这是一堆json)。
我想到的解决方案是将锚点更改为javascript:void(0)
,并添加一个带有实际链接的属性数据清理网址。这是一个正确的解决方案吗?
为什么不直接使用变量来确定window.onload
是否已完成,并根据状态定向到一个新函数?
var isPageLoaded = false;
$(window).load(function(){
isPageLoaded = true;
});
$(document).ready(function(){
$('a').on('click', function (evt){
evt.preventDefault();
if (isPageLoaded) doAjaxThing();
else doNothing();
});
function doAjaxThing() {
}
function doNothing() {
}
});
相关文章:
- JavaScript链接在点击时不起作用;函数在页面加载时工作
- 使用JavaScript从超链接加载时的默认下拉值
- Yii2从点击链接开始加载模式
- 单击同一链接时,使Iron Router重新加载页面
- 更改css链接并等待加载新的css
- href没有在每次单击li的一部分时加载链接.使用javascript使整个li可以点击
- 无法加载套接字.io.js
- jQuery UI选项卡:在选项卡中加载链接/重新加载整个页面
- 重新加载链接文件 HTML
- 在单击链接时运行数据库查询,但仍加载链接URL
- 如何为captcha添加重新加载链接
- 在浏览器中查看之前,预加载链接的php页面
- 可视化javascript加载链
- JQuery -幻灯片,图库:顺序加载图片(接下来的五张),而不是一次全部加载
- jQuery点击类加载链接
- jQuery fade "back to top"链接.页面加载链接可见性
- 在容器内加载链接(Bootstrap - template)
- 加载<链接rel="将原始内容转换为<样式>标签
- 如何从配置中加载套接字io事件监听器
- 从外部源加载链接内部模态