在Angularjs中拖动项目时禁用jquery UI拖动
Disable jquery UI dragging when Item dragged in Angularjs
在我的Angularjs
应用程序中,我有一个项目列表,用户可以拖动每个项目。每个项目都是指令,并将其命名为simple-element
:
app.directive('simpleElement',function(){
return {
restrict:'AE',
template:'<span>Item</span>',
controller:function(){
},
link:function(scope,element,attrs){
element.draggable({
revert:true,
helper:'clone'
});
}
}
});
现在我想当用户拖动每个项目时,即使拖动成功与否,也要使项目的拖动事件disabled
,这样用户就不能再拖动项目了。我在Plunker上创建了一个具有拖放功能的示例。
我找到了解决方案。我不知道这是否是最佳实践,但它对我有效。我在link
函数中插入了以下代码行:
$scope.$watch('item.visible',function(){
//Enable Disableing when Item draged
if($scope.item.visible == false){
element.draggable( "disable" );
}
if($scope.levelModel.visible == true){
element.draggable( "enable" );
}
});
首先观察模型的visible
属性。然后,如果模型中的属性发生变化,我决定启用或禁用该元素。
相关文章:
- jQuery UI可排序-多连接列表拖动
- JQuery UI可拖动潜水与滚动棒到鼠标
- jQuery UI-当可丢弃时,必须删除拖动的元素
- jQuery UI可拖动:自定义捕捉方法
- 是否可以在jquery中使用拖动滑块在4个图像之间滑动
- Bootstrap和JQuery可拖动
- jQuery拖动到相对位置的可排序列表中时出现可拖动辅助对象位置问题
- JQuery UI可拖动:如果助手设置为克隆,为什么不't可拖动集的已应用类到克隆
- jQuery可拖动克隆-safari问题
- 允许具有相同 id 的对象可以使用 jQuery 拖动
- 使一组对象与 jQuery 一起拖动
- 修改(可拖动|jQuery UI)
- “居中拖动Jquery”对话框
- keep:将鼠标悬停在拖动jquery元素上
- 拖动jQuery中已删除元素的克隆
- 不带id的可拖动jQuery的保存位置
- 移除<从一个可拖动的时候被拖动- jquery
- 面板无法拖动- Jquery UI
- 禁用在“猫头鹰轮播”中的特定元素(项目)中拖动 - jquery
- 防止在拖动 jquery UI 滑块时出现鼠标输入/鼠标离开事件