所以基本上我的问题是,如何阻止元素被选中?你可以在这里找到小提琴:http://jsfiddle.net/Wolfy87/HY2u4/
非常感谢任何帮助。感谢。
编辑:我刚刚在safari中测试过它很好,到目前为止它似乎只是firefox。
答案 0 :(得分:3)
jQuery.fn.extend({
disableSelection : function() {
this.each(function() {
this.onselectstart = function() { return false; };
this.unselectable = "on";
jQuery(this).css('-moz-user-select', 'none');
});
}
});
//How to use:
$('div.draggable').disableSelection();
没有jQuery的Soulution:
function disableSelection(target){
if (typeof target.onselectstart!="undefined") //IE route
target.onselectstart=function(){return false}
else if (typeof target.style.MozUserSelect!="undefined") //Firefox route
target.style.MozUserSelect="none"
else //All other route (ie: Opera)
target.onmousedown=function(){return false}
target.style.cursor = "default"
}
发现:
Is there a way to make text unselectable on an HTML page?
答案 1 :(得分:1)
修正了它。事实证明,我必须设置onmousedown和onselectstart函数。我假设这与在标记中放置onmousedown='...'
相同。无论如何,现在已经修好了。只是去小提琴页面。
这基本上是修复它的代码。
$('div.draggable').attribute().onselectstart = function () {
return false;
}
$('div.draggable').attribute().onmousedown = function () {
return false;
}
它会停止在Firefox和IE中选择元素作为文本的默认操作。