jQuery UI 对话框和滚动块竞争鼠标
jquery ui dialog and scrolling blocks compete for mouse
我真的不确定如何正确命名这个问题
让我举一个例子 小提琴
问题是当对话框打开并且您单击目录并开始滚动时,对话框卡住并随着鼠标移动。至少在铬和火狐中。关于如何在滚动目录时释放鼠标的任何想法?
.HTML
<button id="opener">Clicky</button>
<div id="dialog"><h1>Title</h1>
<p>Bacon ipsum dolor sit amet pork chop deserunt ut esse leberkas, shankle strip steak veniam adipisicing salami ball tip.</p>
<p> Duis ut exercitation, velit biltong chicken sed enim pork pastrami shank ut adipisicing. Drumstick ham hock irure sunt filet mignon fatback est chicken mollit venison ad capicola fugiat consequat short loin. Shoulder ea labore, minim pork chop beef tongue pork belly ullamco ex. Bacon tempor officia, strip steak in irure venison magna. Corned beef eiusmod pork belly pork loin laboris.</p>
</div>
JS/JQuery
$(function() {
var menu = [];
menu[0] = '<input type="checkbox" id="helpTOCButton" title="Table of Contents"/>';
menu[1] = '<label for="helpTOCButton">Table of Contents</label>'
menu[2] = '<div id="helpTOC">';
menu[3] = '<a title="Bacon">Bacon</a>';
menu[4] = '<a title="pork">Pork</a>';
menu[5] = '<a title="Steak">Steak</a>';
menu[6] = '<a title="Frequently Asked Questions">FAQ</a>';
menu[7] = '<a title="chicken">Chicken</a>';
menu[8] = '<a title="baby cows">veal</a>';
menu[9] = '<a title="brisket">brisket</a>';
menu[10] = '<a title="what to do in case of heart attacks">change diet</a>';
menu[10] = '</div>';
$( "#dialog" ).dialog({
autoOpen: false,
show: "blind",
hide: "clip",
height: '400',
width: '500',
title: menu.join(''),
open: function() {
$('#helpTOCButton')
.button({icons: { secondary: 'ui-icon-triangle-1-s'}})
.on('click',function() {
$('#helpTOC').slideToggle()
});
},
close: function() {
$('#helpTOCButton').off('click');
}
});
$( "#opener" ).click(function() {
$( "#dialog" ).dialog( "open" );
return false;
});
});
.CSS
h1 { font: bold 1.25em/1.7em Serif; }
#helpTOC {background: #fcfcfc; box-shadow: 2px 2px 2px rgba(50,50,50,.2); display: none; position: absolute; margin-left: 5em; z-index:999; border: 1px solid #ccc; height: 5em; width: 10em; overflow: auto; }
#helpTOC a { font: .75em/1.25em sans-serif; display: block; cursor: pointer; padding: .25em; border-bottom: 1px solid #ccc; }
#helpTOC a:hover { background-color: #ebebeb; box-shadow: 2px 2px 2px rgba(50,50,50,.1);}
好的,我想我可能已经解决了本质问题
问题是这个。内容目录将插入到对话框的标题中,默认情况下,jquery-ui 以要移动的区域为目标。我不完全确定这是如何导致问题的,但是将菜单#helpTOC
前面移动到对话框会导致问题消失。
更新的小提琴 -> http://jsfiddle.net/Hax8K/
我想花时间写一个问题让我的大脑思考了一下。我仍然欢迎对我最初的问题或我选择如何解决它的回答或解释。
相关文章:
- EaseJS拖放;放下(动画CC)电影剪辑的鼠标坐标
- 当鼠标悬停在文本中的单词上时显示警报
- JsFiddle上的鼠标事件不起作用
- 每当您在选择器内移动鼠标时,悬停功能就会重复
- 如何在鼠标悬停时在另一个图像上滑动图像.
- 鼠标悬停事件影响列表中所有行中的按钮,而不仅仅是特定按钮
- 将鼠标旋转限制为特定的度数
- 跟踪jqplot垂直折线图的鼠标位置
- node-webkit-从父窗口捕获iframe鼠标事件
- 悬停下拉菜单即使在鼠标移出后也保持活动状态
- Javascript-在视频中跟踪鼠标位置
- JQuery UI可拖动潜水与滚动棒到鼠标
- 如何在jquery中找到鼠标滚轮/触摸移动事件的走向
- 在鼠标悬停时展开列表
- jQuery悬停在没有鼠标悬停的情况下启动
- 鼠标输入在 YUI 的 chrome 中不起作用
- 鼠标悬停时如何居中放大背景图像
- 鼠标光标-用于wordpress网站
- 当我在节点上拖动鼠标时,我如何防止使用d3.ehavior.zoom().on(“缩放”,重绘)
- jQuery UI 对话框和滚动块竞争鼠标