先解开点击,然后绑定(jquery)。
1.我在 上有一个单击事件 $('#locations').click(function(){ $('#train').unbind('click'); //do some stuff } 2.一旦关闭按钮单击 $('.close').click(function(){ //do some stuff } 3.如果我单击#train 再次 $('#train').bind('click', function() { alert('train is clicked'); //do some stuff } 现在问题是#train不发射.是要在.close函数上再次绑定事件吗? 请提前建议. 解决方案 看您的问题,unbind>之后,您似乎不会绑定click,因此不会发射. (假设您保留了正确的功能顺序).您必须这样做: //Set a function with the action you need to do after you clic
6 2023-05-08
编程技术问答社区
在knockout中解除视图模型与视图的绑定
我正在寻找淘汰赛中的无链功能.不幸的是,谷歌搜索并查看这里问的问题没有给我任何有关该主题的有用信息. 我将提供一个示例来说明需要哪种功能. 可以说我有一个带有多个输入的表格. 另外,我有一个符合此形式的视图模型. 由于某种原因,我需要将视图模型与表单中解脱出来,即,由于动作完成了,我希望所有可观察到的物品都停止对相应的值的更改进行反应,反之亦然 - 对观察到的任何更改均应' t影响输入的值. 实现这一目标的最佳方法是什么? 解决方案 您可以使用ko.cleanNode删除绑定.您可以将其应用于特定的DOM元素或更高级别的DOM容器(例如整个表单). 参见 http://jsfiddle.net/kryxr/157/157/ P> 其他解决方案 @mark robinson答案是正确的. 尽管如此,使用标记答案我做了以下内容,您可能会发现有用. // get the DOM element var element = $('div.s
4 2023-04-07
编程技术问答社区
褪色时的模态解除绑定
这是先前提出的问题的版本(模态窗口和绑定/绑定/打开绑定 ). I have a form and when "Add New" is selected a modal window appears in which text can be typed in a field to add to the dropdown.这可能发生在8或9个字段.错误是,如果用户通过单击" X"或框周围的黑暗空间来否定模式(我猜)所以有一个双重条目,并且模式永远不会被解雇,必须重新加载页面并重新开始. 那么,当模态被" X"丢弃或单击框外,我该如何解开模态?我已经尝试了在阳光下想到的一切(下面有一些例子).我已经尝试在此处建议的点击为什么在这里两次jquery ajax port twos? 但这不起作用,或者我不知道如何正确实施它.已经有一段时间了.有任何想法吗?
0 2023-03-29
编程技术问答社区
当你使用.html()删除元素时,jQuery中的事件监听器会自动删除吗?
在jQuery中,如果我们使用.remove()删除某些元素,则将删除与元素关联的所有绑定事件和jQuery数据. 但是,如果我们用.html()"删除"元素会发生什么? 在更改任何HTML之前,我们需要解开所有元素以避免内存泄漏吗? 解决方案 是的,它们将被删除. jQuery将清理与删除元素有关的事件等.如果您执行$(elm1).html($ elm2.html()) 之类的事情,它将不会复制事件. 其他解决方案 是的,即使您使用html(),它们也会被删除. jQuery 源代码 其他解决方案 只是为了展开一点: .remove() , .html() , .detach() .detach() 不 删除听众 .clone() 具有参数,让您决定是否复制数据/侦听器 所以,如果要保留听众,请使用.detach().
2 2023-03-25
编程技术问答社区
点击事件多次触发的问题,如何解决?
我有一个按钮.当我单击它时,我将一些按钮附加到DOM上. 我遇到的问题是我多次涂火的按钮. $(el).on('click', function (e) { key(); }); function key() { $(document).on('click', '#key li', function () { console.log($(this)); }); } 首次称为key(),console.log 我第二次致电key() console.log射击两次 等等 我尝试添加$(document).find('#key li').unbind('click'),但这似乎不起作用 有什么想法? 编辑: 这是一个 $('button').on('click', function () { $('.cont').remove(); $('.container').remo
12 2023-03-14
编程技术问答社区
什么原因会使jQuery的解除绑定功能不能按预期工作?
请查看以下代码(此外,您需要 jquery.viewport.js 和 jquery. scrollto.js ). 我从这个脚本中期望的行为是,每当我滚动页面时,都应在最高可见的行( element)下方插入红行(带有类alwaysVisible>)的元素(元素)那张桌子.然后,应该滚动页面,以使这些红行中的第一个出现在视口的顶部.实际发生的是,makeVisibleWhatMust();被重复调用,直到我到达页面末尾.我以为$(window).unbind('scroll');会防止makeVisibleWhatMust();再次被调用,但显然这不起作用. 有什么想法为什么? 这是我写的JavaScript: function makeVisibleWhatMust() { $('#testContainer').text( $('#testContainer').text() + 'called\n'); $('table.s
8 2023-02-14
编程技术问答社区
让一个元素在动画中不能被点击
我试图使元素被动画时不可单击.动画完成后,我希望它再次可单击.我已经在很长一段时间内寻求有关如何实现这一目标的帮助,但是我无法正常工作,我不知道为什么. html: Allright B C D 单击字母A时,它向左移动,然后在其旁边逐渐淡出一些文本. jQuery: (function() { var letterA = $('#a'), llright = $('#llright'); $('#a:not(.open)').live('click', function() { letterA.animate({ marginRight: "5.7in", }, 1300, function() { letterA.addClass('ope
0 2023-02-13
编程技术问答社区
jQuery:从元素中停止动画?
将动画应用于元素时 - 例如. div.animate() - 我如何从单个元素中解脱该动画? 我已经尝试了div.unbind()和div.unbind(" animate"),但不起作用. 谢谢 解决方案 我认为您需要这个: $('#div').stop(); // this stop the currently-running animation 动画不绑定到元素,只是效果=>您不能解开 其他解决方案 如果您只想停止所选元素上的动画,而不是完全切换所有元素的动画,则只需使用div.stop()或div.clearqueue() http://api.jquery.com/clearqueue/ http://api.jquery.com/stop/ 如果您实际使用Div.Stop(true),它将实际上也将调用Clearqueue. 其他解决方案 对于单个元素: $(selector).clearQueue().
10 2023-02-13
编程技术问答社区
解除与点击的绑定,但保留eventPreventDefault()。
我试图弄清动画的单击动画,直到动画结束以防止动画重叠为止. unbrind可以正常工作,但是当然,event.preventdefault停止工作,我的按钮/链接再次变得活跃.我不确定如何解决这个问题. 缩短代码的版本是: $('a.Next').bind('click', SlideFwd); function SlideFwd(e){ e.preventDefault(); $('a.Next').unbind(); $('ul.GridviewList').animate({ left: '-=800px' }, 'slow', function() { $('a.Next').bind('click', SlideFwd); }); }; 和html是:
10 2023-02-13
编程技术问答社区
如何以编程方式 "解除绑定 "一个套接字?
1)套接字似乎没有从localendpoint解开,直到过程结束为止. 2)我尝试了另一个问题的解决方案,并尝试等待一分钟 - 无济于事. 3)目前我已经尝试了以下操作以摆脱插座及其连接: public static void killUser(User victim) { LingerOption lo = new LingerOption(false, 0); victim.connectedSocket.SetSocketOption(SocketOptionLevel.Socket,SocketOptionName.Linger, lo); victim.connectedSocket.Shutdown(SocketShutdown.Both); victim.connectedSocket.Disconnect(true); victim.connectedSock
8 2023-02-13
编程技术问答社区
jQuery "unbind "回到 "bind "不起作用
当我单击一个元素时,我想解开"鼠标"和" mouseleave"事件的效果,但是如果单击另一个元素,我想将它们重新绑定 - 这不起作用. 有帮助吗? 这是代码: $(document).ready(function(){ $("#shape1 img").click(function(){ $("#shape1 img,#shape2 img, #shape3 img, #shape4 img, #shape5 img").unbind('mouseenter mouseleave'); }); $("#close").click(function(){ $("#shape1 img,#shape2 img, #shape3 img, #shape4 img, #shape5 img").bind('mouseenter mouse
2 2023-02-12
编程技术问答社区
如何防止点击队列的建立,使用jquery中的toggle? 尝试使用bind/unbind('click')。
显示切换动画显示时,我想禁用点击处理程序,以使动画由于多次快速单击而堆积.谢谢 jQuery脚本: $("#button").click({ $(this).unbind('click').next().toggle("slow",function(){$('#button').bind('click')}); }); html代码 Toggle test 解决方案 首先,您的附加事件的方式被打破了.我不知道这只是匆忙提出问题或代码中的真正错误,但这是设置处理程序的正确方法: $("#button").click(function(evt) { //
6 2023-02-12
编程技术问答社区
在Ajax请求之前解除ASP UpdatePanel的事件绑定以防止内存泄漏
这是一个普遍的问题,即ASP UpdatePanels内部的jQuery小部件需要在AJAX请求后重新初始化,但是我的问题是事件在更换更新panel内的HTML之前并没有取消限制.每当您致电.html(" ...")或.remove()时,jQuery会为您处理此问题,但是UpdatePanel不使用JQUERY. 我有弹出元素(在UpdatePanel内部),当用户单击它们外部时,需要隐藏它们,因此我做了一个jQuery特殊事件,以检测发生这种情况时,但是在AJAX请求后,从未调用拆卸功能.因此,随着时间的流逝,文档不再附加的元素上越来越多的事件处理程序. 我可以具有我的小部件初始化功能(每次AJAX请求后都会运行),检查独立元素并解开他们的事件,但恐怕这可能会导致其他问题. 解决方案 尽管我用以前的答案解决了这个问题,但有关代码项目的本文可能会帮助其他有类似问题的人: http://www.codeproject.com/articles/articles/art
6 2023-02-11
编程技术问答社区
当页面保存在DOM中时,如何使用开/关正确地解除Jquery Mobile中事件的绑定?
由于jQuery移动在浏览时会在DOM中保留一些页面,因此在来回时可能会多次访问一个页面. 如果我要绑定到像下面和内部的页面,请执行我的所有页面逻辑,其中包括"嵌套元素绑定": // listener for the page to show: $(document).on('pagebeforeshow.register', '#register', function() { // stuff // page event bindings: $(document).on('click.register', '.registerSubmitter', function(e) { // do something }); }); 来回走动会导致我的嵌套绑定被多次连接. 现在试图像这样解决这个问题(不起作用...): $(document).on('click', '.registrySubmit
10 2023-02-11
编程技术问答社区
解除绑定后,如何将点击事件重新绑定到锚点?
我想在第一次单击之后解开锚点,但是当用户单击特定按钮时,我想重新点击此锚点 我写了此代码 $(document).ready(function(){ $("a.package").click(function(){ //alert('click'); $(this).unbind('click'); // the rest of the code }); $('#activate').click(function(){ $('a.package').bind('click'); // the rest of the code }); }); unbrind函数效果很好,但是绑定函数不起作用,为什么?以及如何使其工作? 解决方案 将单击功能存储在变量中,以便可以轻松地重新分配它... $(document).ready(
0 2023-02-10
编程技术问答社区
如何解除对.hover()的绑定,但不解除对.click()的绑定?
我正在使用Bootstrap 3创建一个站点,还使用一个脚本,该脚本使下拉菜单使用.hover()函数在Hover上出现.我正在尝试通过使用enquire.js在小型设备上预防这种情况.我正在尝试使用此代码在元素上解开.hover()事件: $('.dropdown').unbind('mouseenter mouseleave'); 这可以解脱该脚本的.HOVER,但显然它也可以删除.click()事件(或任何Bootstrap使用),现在当我悬停或单击该元素时,什么也不会发生. 所以我只想如何删除该元素上的.hover(),该元素是由该脚本删除,但不要更改其他任何内容. 真的很感谢任何帮助. 谢谢! 编辑:这是我如何调用悬停功能的处理程序: $('.dropdown').hover(handlerIn, handlerOut); function handlerIn(){ // mouseenter code } function hi
22 2023-02-10
编程技术问答社区
jQuery/Javascript暂时禁用addEventListener/attachEvent附加的事件
有没有办法暂时禁用事件听众? 就我而言,我有一个第三方库(不是 jQuery Centric),它使用 AddeventListener/actactevent在元素上创建鼠标/鼠标out事件. 在某些情况下,另一个事件对不同的元素发射,我需要禁用那些事件的听众.到目前为止,我的解决方案就是简单地unbind鼠标浏览/鼠标.此通常正常工作,因为该事件通常会导致页面刷新. 但是,一次又一次的错误(想想验证错误)会导致页面不刷新,我需要重新连接鼠标浏览/鼠标out事件侦听器. 有用的信息 可能值得一提的是,由于鼠标/鼠标out事件的侦听器是创建和附加在第三方库中的,所以我不能简单地将事件分配给变量并以这种方式绑定/绑定它(AFIK是最好的方法这个). 更新 我最初问 在jQuery中有办法将事件侦听器分配给对象吗? 我已经发现,无法访问AddeventListener/stactevent分配的事件: instactevent()/add
16 2023-02-10
编程技术问答社区
移除/解除对锚点的悬停束缚
html Home CSS a { color: blue; } a:hover { color: red; } 现在您可以看到现在悬停在悬停的颜色红色. 问题 如何通过jQuery删除悬停? 我努力了: $('a').unbind('hover');和$('a').unbind('mouseenter mouseleave') 我想到为什么它不起作用,这不是hover()? 解决方案 因为a:hover在锚标签上没有绑定事件,并且只是一个伪类,您将不会成功地关闭.hover()事件. 如果您想更改行为,则可以做两件事 删除a:hover样式 在锚标签上绑定悬停事件,并相应地设置CSS. 其他解决方案 否.这是CSS规则,而不是JavaScript事件. 改变颜色的最简单方法是通过更强的CSS规则,例如: a.NoHover:hover {
4 2023-02-09
编程技术问答社区
解除绑定一个特定的函数 jQuery
我要做的是在运行一次之后,请解开特定功能.在下面的代码中,是窗口滚动. $(window).scroll(function(){ if($(window).scrollTop() == viewportheight ){ $("#landing_page").fadeOut(function() { $(window).scrollTop(0); $(window).unbind("scroll");}); } }); 基本上,当#div淡出时,我希望它滚动(0).滚动顶部后,我需要整个功能才能解开. 有没有一种方法可以给该功能一个特定的名称,然后回电该名称?因为此代码有效,所以只有它删除了所有滚动功能. (当然我不想要)我在想这样的事情: $(window).scroll(function(FUNCTION NAME HERE){ if($(window).scrollTop() == viewporthei
2 2023-02-09
编程技术问答社区