作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我希望能够更改传递到可选择项的启动事件中的参数,这样我基本上可以允许用户使用可选择的 jQuery UI 效果,而无需按住 CTRL 键。
JS
$(function() {
$( "#selectable" ).bind("mousedown", function(event, ui) {
var result = $( "#select-result" ).empty();
event.metaKey = event.ctrlKey = true;
});
$( "#selectable" ).selectable();
});
我对我想要在这里完成的事情感到困惑:
http://jsfiddle.net/josephbulger/ZfevM/
我遇到的问题是,当我在启动方法中设置事件的参数时,停止方法看不到我所做的更改。
有办法完成我想做的事情吗?
最佳答案
您不能在此处设置属性……因为它是 stop
方法中的不同 event
对象。您可以在更高的范围内设置一些变量 ( like this ),但没有一个变量会持续存在于 event
对象上。这并不是说它真的“清理”了它们,它只是一个全新的对象。
要使可选择的行为就像按住 Ctrl 一样,请绑定(bind)到它提前使用的 mousedown
事件并设置 .metaKey
属性(property) event
为 true
,如下所示:
$("#selectable").bind("mousedown", function(e) {
e.metaKey = true;
}).selectable();
You can test it out here ,请记住在调用 .selectable()
之前查找,因为事件处理程序是按顺序绑定(bind)执行的。
关于jquery - 有没有办法改变 jQuery 中的事件参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4215333/
我是一名优秀的程序员,十分优秀!