Tag: javascript events

使用jQuery,在元素上设置Draggable可以防止在单击可拖动元素时触发模糊

使用jQuery,当您在文本框上设置模糊事件并将另一个元素设置为可拖动时,单击可拖动元素时,模糊事件不会在FireFox中触发。 IE有点好,你得到模糊事件,但你没有得到可拖动元素上的click事件。 如果你没有在draggable构造函数中指定cancel:“”,你将触发blur事件,但是你想要拖动的元素是不可拖动的。 jQuery v1.3.2 jQuery UI v1.7.2 console.log行适用于FireFox的FireBug插件。 Blur/Click Workbench function blurring() { console.log(‘1 – blurring – ‘ + $( this ).attr(‘id’)); } function clicking() { console.log(‘2 – clicking – ‘ + $( this ).attr(‘id’)); } $(document).ready(function() { $( “.draggableTool” ).draggable( { cancel: “” } ); $( ‘.property’ ).blur( blurring ); $( ‘#labelContainer’ ).click( […]

触发单击时超出最大调用堆栈大小

我真的想做一些简单的事情。 单击某个元素,我触发另一个元素的单击,但我在我的控制台上得到以下错误。 Uncaught RangeError: Maximum call stack size exceeded 我的代码如下; $(‘body’).on(‘click’, ‘.actual-click-element’, function(event) { $(‘.trigger-click-element’).trigger(‘click’); event.preventDefault(); }); 我想知道为什么我得到这个错误,我不知道这是如何递归的。 有任何想法吗?

twitter bootstrap typeahead无法添加到动态创建的元素

有没有办法将twitter bootstrap的typeahead函数转换为$(“body”)。on()函数? 如果页面加载中存在该元素,则以下代码可以正常工作。 $(“#job_title”).typeahead({ source: searchFunction, onselect: function(obj) { } }); 但是如果我动态地添加id =“job_title”的文本输入,则上述function不起作用。 这有解决方法吗?

在动态元素上使用.on()和e.stopPropagation()

我一直在尝试使用stopPropagation()捕获元素之外的点击事件。 $(“.container”).children().on(‘click’,function(e){ e.stopPropagation(); }); $(“.container”).on(“click”,function(){ alert(“outside the box?”); })​ 这是一个jsFiddle设置来演示它的function 。 单击白框外的任何位置时,都会触发警报。 现在,我试图将相同的原理应用于动态创建的元素。 据我所知,jQuery中的事件赋值的on()方法应该允许它在不更改脚本的情况下运行。 这是第二个jsFiddle ,您必须首先单击链接以创建元素。 一旦你完成了这个,理论是相同的脚本将起作用,但事实并非如此。 我对这种方法有什么看法?

我删除元素时是否需要在jQuery中分离事件

我有一个使用动态标签的UI,因此可以将内容加载到选项卡中,然后可以关闭标签并从页面中删除内容。 当我将内容加载到选项卡时,我使用jQuery将大量事件附加到元素。 当我从页面中删除这些元素时会发生什么? jQuery需要知道吗? 另外,如果我多次附加一个事件,这有关系吗? 例如,在我的选项$(‘.submitButton’).click(…)载中,我可以使用类选择器(如$(‘.submitButton’).click(…)附加事件$(‘.submitButton’).click(…) 。 但是我可能已经打开了其他选项卡,这些选项卡已经附加了submitButton事件。 在这种情况下,我将重新附加相同的事件。 这有什么问题吗?

用mousedrag替换mousemove?

标题解释了这一切。我在提供拖动事件时遇到了问题。我尝试用mousedown替换mousemove,可能会被mousedown激发一次然后稳定下来,但它会帮助。如何以编程方式执行此操作。 如果您想引用我想要操作的代码,您可以参考此代码。请忽略它。 $(document).ready(function () { $(“.toolImage”).mouseover(function () { $(this).parent(“.toolTip”).find(“.toolTipDesc”).css(“display”, “block”); }); $(“.toolImage”).mouseleave(function () { $(this).parent(“.toolTip”).find(“.toolTipDesc”).css(“display”, “none”); }); var native_width = 0; var native_height = 0; //Now the mousemove function $(“.magnify”).mousemove(function (e) { if (!native_width && !native_height) { //This will create a new image object with the same image as that in .small //We cannot directly […]

JavaScript函数队列

我有大量的function需要连续运行,但在其他function完成之前不会运行。 我需要的是一种将这些函数排队的方法,只有在上一个函数成功完成后才能运行。 有任何想法吗? Function1(); Function2(); Function3(); Function4(); Function5();

如何监视jQuery中body’data’属性的变化?

我的body标签中的数据段属性由滑块更改。 当它被改变时,我需要根据它的值触发一个函数。 我不确定如何在这种情况下附加事件监听器?

iframe如何从iframe内部调整iframe(iframe和页面 – 同一个域)

我尝试从iframe内部听取iframe宽度/高度的变化: $(window).resize(function(){ alert(‘1 on inside iframe’); }); 要么: $(window.parent).find(‘iframe’).resize(function(){ alert(‘2 on inside iframe’); }); 但是当iframe大小改变时没有任何反应。 (我需要一个跨浏览器的解决方案:IE7,Chrome,Firefox,Safari。)

$(window).scroll()在页面加载时触发

有没有办法阻止$(window).scroll()在页面加载时触发? 在Firefox 4中测试以下代码,即使我拔下鼠标,它也会触发。 jQuery(document).ready(function($){ $(window).scroll(function(){ console.log(“Scroll Fired”); }); });