【jQuery基础编程】jQuery-UI实现折叠面板里的控件拖曳
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了【jQuery基础编程】jQuery-UI实现折叠面板里的控件拖曳,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2269字,纯文字阅读大概需要4分钟。
内容图文
因一个项目的需要,需要在前端界面实现在折叠面板里拖曳控件到工作区的功能(类似于Android和MFC的可视化界面开发),于是就开始学起了强大的jQuery,发现里面的jQuery-UI有折叠面板、按钮等控件,但当在折叠面板里拖曳按钮时,按钮的拖曳范围只能是折叠面板内部,不能拖到工作区。所以这里绕了个弯实现了一下:
主要的实现过程是:首先在控件表明生成一个副本,每次拖曳控件的时候拖曳的都是副本,当拖曳完成,即鼠标弹起后,原控件表面就又生成一个副本待下次拖曳。(其他一些细节写在了注释里.)
代码:
<!DOCTYPE html>
<html>
<head>
<metacharset="utf-8" />
<title>从折叠面板里拖曳元素</title><scriptsrc="../jquery/jquery-1.11.2.min.js"></script><scriptsrc="../jquery/jquery-ui.min.js"></script><linkhref="../jquery/jquery-ui.min.css"rel="stylesheet"></link><style>#accordion{
width:20em;
}.accordion-button{
width:auto;
height:auto;
margin-left:1em;
}.graggable{
}</style></head><body><divid="accordion"><h3><ahref="#">按钮</a></h3><div><buttonid="button1"class="accordion-button">Button1</button><buttonid="button2"class="accordion-button">Button2</button></div></div></body></html><script>//元素事件//change,click,dblclick,error,focus,focusin,focusout,keydown,keypress,keyup,//mousedown,mouseenter,mouseleave,mousemove,mouseout,mouseover,mouseup,resize,scroll,select,submit,unload
$("#button1").button();
$("#button2").button();
$("#accordion").accordion();
//将button2变为可拖曳元素,可测试出它只能在折叠面板内部拖动
$("#button2").draggable(
{cancel:".title"});
//先在Button1上生成一个待拖曳控件
addElement($("#button1"));
//新增一个x控件functionaddElement(x){//在现有控件之上生成一个新控件var classAttr = "accordion-button graggable";
//获取元素内容var text = x.text();
//元素CSS样式,主要是设置位置与原有元素相同var styleAttr = ‘style="position: absolute;top:‘+
x.position().top +‘px;left:‘+
x.position().left+‘px;"‘;
//设置元素
$elem = ‘<button ‘+styleAttr+‘class="‘+classAttr+‘ " role="button">‘+
‘‘+text+‘</button>‘;
$(‘body‘).append($elem); //添加元素
$(".graggable").button(); //设置元素
$(".graggable").draggable({cancel:".title"});//设置元素可拖曳//给所有控件注册鼠标弹起事件,每弹起一次,就生成一个新的当前控件
$(".graggable").on("mouseup",function(){
addElement(x);
})
}
</script>
实现效果:
原文:http://blog.csdn.net/zgljl2012/article/details/45271611
内容总结
以上是互联网集市为您收集整理的【jQuery基础编程】jQuery-UI实现折叠面板里的控件拖曳全部内容,希望文章能够帮你解决【jQuery基础编程】jQuery-UI实现折叠面板里的控件拖曳所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。