rog*_*iog 42 javascript jquery
我想在单击某个DOM元素后加载图像和其他一些操作,但我想在点击操作完成后加载它们.
这是一个代码示例:
$("#message_link").click(function(){
if (some_conditions...){
$("#header").append("<div><img alt=\"Loader\"src=\"/images/ajax-loader.gif\" /></div>");
}
});
Run Code Online (Sandbox Code Playgroud)
问题是if条件在单击操作完成之前执行(或者至少这是我的印象).我需要在单击操作完成后执行If条件.有人可以告诉我一个解决方案吗?
谢谢 :)
Jam*_*ice 39
如果我已正确理解您的问题,那么您正在寻找mouseup
事件,而不是click
事件:
$("#message_link").mouseup(function() {
//Do stuff here
});
Run Code Online (Sandbox Code Playgroud)
该mouseup
事件触发时,释放鼠标按钮,将鼠标按钮是否被按下元素上不考虑,而click
考虑到这两个mousedown
和mouseup
.
但是,click
应该可以正常工作,因为在释放鼠标按钮之前它实际上不会触发.
Kev*_*ker 39
setTimeout
可能会帮到这里
$("#message_link").click(function(){
setTimeout(function() {
if (some_conditions...){
$("#header").append("<div><img alt=\"Loader\"src=\"/images/ajax-loader.gif\" /></div>");
}
}, 100);
});
Run Code Online (Sandbox Code Playgroud)
如果满足some_conditions,那将导致在click事件发生后~100ms附加div.
您可以在链等元素上编写事件,
$(element).on('click',function(){
//action on click
}).on('mouseup',function(){
//action on mouseup (just before click event)
});
Run Code Online (Sandbox Code Playgroud)
我用它来删除购物车项目。同一个对象,做一些动作,一个动作之后
归档时间: |
|
查看次数: |
123674 次 |
最近记录: |