Tag: javascript events

Javascript检测在Mouseup上保持的控制键

我搜索了很多,似乎找不到满意的解决方案。 我希望有人能帮帮忙。 当我使用jQuery时,我也在编写数千行Javascript。 所以一个“纯粹的”JavaScript解决方案就好了。 我正在尝试确定控制键是否在物理上按住鼠标事件。 而已; 没有其他先决条件。 有没有人知道如何可靠,跨浏览器这样做? 我已经尝试通过记下按下和释放按键时将其存储在状态变量中: // BEGIN store control key status in hash_state $().bind(‘keydown’,’ctrl’,function( arg_obj_e ){ hash_state.sw_ctrldn = true; console.debug( hash_state.sw_ctrldn ); }); $().bind(‘keyup’,’ctrl’,function( arg_obj_e ){ hash_state.sw_ctrldn = false; console.debug( hash_state.sw_ctrldn ); }); // END store control key status in hash_state 但是,这确实不起作用。 如果你使用firebug测试它并观察控制台,你会发现自动重复似乎发生了,并且值切换。 我检查了mouseup事件以查看是否有任何有用的东西,但无济于事: var debugEvent = function( arg_obj_e ){ var […]

如何使用jQuery切换(隐藏/显示)侧边栏div

我有2个 s,其中包含ID A和B div A有一个固定的宽度,作为侧边栏。 布局如下图所示; 造型如下; html, body { margin: 0; padding: 0; border: 0; } #A, #B { position: absolute; } #A { top: 0px; width: 200px; bottom: 0px; } #B { top: 0px; left: 200px; right: 0; bottom: 0px; } 我有toggle作为切换按钮。 在切换按钮单击时,侧边栏可能会隐藏到左侧,而div B应该伸展以填充空白区域。 在第二次单击时,侧边栏可能会重新出现在前一个位置,而div B应缩回到之前的宽度。 如何使用jQuery完成此操作?

选择项目或键入输入与列表中的项目匹配时,HTML5 datalist的jQuery事件

我有如下数据列表 – 我想要的是,当一个项目被完全输入时(例如在用户完全键入“Adnan1”时输入框中)或从列表中选择,那么我想要一个事件。 我尝试了几种方法,但到目前为止两种方法都没有帮助我。 方法是 – $(“#name”).change(function(){ console.log(“change”); } 问题是,当输入失焦时,事件才会被触发,即当我点击屏幕中的某个位置时。 我也试过了 $(“#name”).bind(‘change’, function () { console.log(‘changed’); }); 但每次输入时都会触发回调。实际上,当完全选择项目时,我需要进行AJAX调用。 通过输入或从下拉列表中选择。 第一种方法对于用户的观点是不好的,因为他必须进行额外的点击,而第二种方法的缺点是每个字母都会触发一个事件。 我想要的只是当用户做出选择或输入完整句子时的事件。 有没有办法实现这个目标? 我遗失的任何事件都可以解决我的问题。

有浮动工具提示的Flot的任何示例?

我目前正在开发一个Flot图,这个API看起来总体上非常强大,尽管高级使用的例子没有被广泛记录。 API建议有一些方法可以在图表上设置hoverable,而不是我确定究竟是什么意味着我可以用它来做。 我想知道是否有人可以提供他们遇到过的一些示例,或代码,这些示例表明以下任何一个示例: 通过将鼠标hover在Flot图表元素上的事件触发的动态工具提示 勾选工具提示(hover在xaxis上显示详细信息) 任何类型的hover在/动态事件绑定已使用w Flot 我正在寻找的效果类似于此 Open Flash Chart示例

键盘滚动时不会触发Jquery列表框更改事件

我在HTML表单上有一个简单的Listbox和这个非常基本的jQuery代码 //Toggle visibility of selected item $(“#selCategory”).change(function() { $(“.prashQs”).addClass(“hide”); var cat = $(“#selCategory :selected”).attr(“id”); cat = cat.substr(1); $(“#d” + cat).removeClass(“hide”); }); 当使用鼠标选择当前项目时,更改事件会激活,但是当我使用键盘滚动项目时,事件不会被触发,我的代码也不会执行。 这种行为有原因吗? 什么是解决方法?

使用e.stopPropagation()来防止事件冒泡的利弊

很多人都解释说e.stopPropagation()可以防止事件冒泡。 但是,我很难找到为什么人们想要或者想要首先防止事件冒泡。 在我的网站上,我有许多这样的元素,如下所示: $(document.body).on(‘click’, “.clickable”, function(e){ //e.stopPropagation(); //do something, for example show a pop-up or click a link }); outside stuff Do Something 我想添加e.stopPropagation()因为我想使用这个真棒触摸库Hammer.js将事件处理程序从’click’更改为’touch’ 。 。 这将允许点击在桌面上正常发生以及在移动设备上进行触摸事件。 这个问题(请纠正我,如果我错了)是滚动触摸设备减慢停止。 这是e.stopPropgation()有用的地方吗? 这样,无论何时触摸屏幕document.body每次都不会发生事件 – 事件冒泡?

如何在javascript onbeforeunload事件中获取网页上链接的目标url?

是否可以捕获用户点击的网页上的链接? 不是在谈论他们是否在地址栏中手动输入了url,或者他们是否点击了后退按钮 – 而是当前页面上的现有链接或菜单项。 这是一个商业网页,其标准页眉和页脚包含指向公司网站上其他页面的链接。 他们有一个复杂的订单表单,尝试保存和恢复表单的状态是不切实际的。 如果在填写订单的过程中,客户需要访问网站上的另一个页面 – 查看产品等。理想情况下,我可以选择在另一个浏览器窗口或选项卡中打开链接而不是离开页面,以便用户不会丢失他们已下订单的工作。 我知道我可以使用一组不同的页眉和页脚来编写,以便在另一个窗口/选项卡中打开它们的链接,但是为了简化维护和更新,我试图最小化所使用的变体数量。 此外,用户可能想要放弃订单,如果在尝试这样做而另一个窗口打开时可能会感到困惑。 我正在使用JQuery和Javascript。

Chrome不会触发内容可编辑iframe中的文档焦点和模糊事件

我正在重点关注iframe内容。 它适用于FF,但focus和blur事件不会在Google Chrome中触发! var iframe = $(‘#iframe’).get(0); iframe.onload = function(){ iframeDoc = $(iframe.contentWindow.document); iframeDoc.focus(function(){ alert(‘focused’); }).blur(function(){alert(‘blur’); alert(‘blured’); }); } 然而,像keyup , keypress这样的其他事件正在发挥作用。 你知道问题是什么以及如何处理它?

鼠标hover问题

我有以下鼠标hoverfunction: $(‘.msg_id’).live(“mouseover”, function() { $(this).css(‘cursor’, ‘pointer’); tid = $(this).attr(‘id’); idx = $(this).attr(‘name’); resp=””; $.ajax({ async: false, url: “log_msg.asp”, data: $(“#msgForm”).serialize() + “&aktion=popup&msg_id=”+tid+”&msg_id”+idx, success: function(data){ $(“#”+tid).html(data); } }); //$.post(“log_msg.asp”, $(“#msgForm”).serialize() + “&aktion=popup&msg_id=”+tid+”&msg_id”+idx, //function(data) { //}).success(function(){ //$(“#”+tid).html(data); //resp=data; //$(‘#bub’+tid).css(‘display’, ‘block’); //popd.css(‘display’, ‘block’); //}); }); 它将一些html代码放在.msg_id($(“#”+ tid).html(data);)中。 函数“mouseover”在循环中调用。 ajax请求在鼠标hover时始终发送,而不仅仅是一次。 我该如何解决? 我也尝试过mouseenter,但它也会循环播放。

猫头鹰旋转木马2克隆项目点击事件没有开火

我目前正在开发中使用Owl Carousel 2.0.0-beta.2.4来保持旋转木马居中并循环工作得很好的项目。 出于某种原因,Owl在设置loop: true时生成的克隆项loop: true似乎不会在点击时触发。 您将在下面的示例中看到,每个其他项目在触发时都会发出警告,但如果项目已被克隆,则它似乎不会注册click事件。 的jsfiddle HTML: CSS: /* * Owl Carousel – Animate Plugin */ .owl-carousel .animated { -webkit-animation-duration: 1000ms; animation-duration: 1000ms; -webkit-animation-fill-mode: both; animation-fill-mode: both; } .owl-carousel .owl-animated-in { z-index: 0; } .owl-carousel .owl-animated-out { z-index: 1; } .owl-carousel .fadeOut { -webkit-animation-name: fadeOut; animation-name: fadeOut; } @-webkit-keyframes fadeOut { 0% { […]