有没有办法告诉jQuery只做一次事情?就像现在,我需要jQuery来点击div,附加一些HTML.然后,每当有人再次点击该div时,它会切换隐藏/显示.有没有办法做到这一点?我试着不要太困惑.
编辑:解决了!
SLa*_*aks 18
使用该one方法.
例如:
$('#myDiv').one('click', function() {
$(this).append('...').click(function() { ... });
});
Run Code Online (Sandbox Code Playgroud)
有多种方法可以做到这一点.
首先,您可以使用标记,然后将其删除:
<div id="mydiv" class="not-initialized">
...
</div>
Run Code Online (Sandbox Code Playgroud)
有:
$("#mydiv").click(function() {
if ($(this).hasClass("not-initialized")) {
$(this).removeClass("not-initialized");
// append content
} else {
$(this).toggle();
}
});
Run Code Online (Sandbox Code Playgroud)
其次,您可以更改事件处理程序:
$("#mydiv").click(append_content);
function append_content() {
...
$("#mydiv").unbind("click", append_content).click(toggle_display);
}
function toggle_display() {
$(this).toggle();
}
Run Code Online (Sandbox Code Playgroud)
或者你可以做一些事情,比如测试div以查看内容是否存在.
| 归档时间: |
|
| 查看次数: |
3653 次 |
| 最近记录: |