跪求大神们:如何使用jquery ui draggable实现拖动iframe内的div 来移动整个iframe

如图 黄色的区域是iframe 灰色的div是iframe里面的title。我想实现拖拽iframe里面的title 来 实现iframe的移动。

这个是无法实现的 。它违反了浏览器的安全原则。
在你当前页面中是无法监听到 iframe中的 事件的,更不用说去拖动title 反过来操作父容器里面的东西了。这个好好想一下,如果当你用iframe嵌套了任意一个网页,这个网页却能操控你父容器的内容(你想拖动iframe里面的tile来重新设置iframe在父容器里面的位置,就相当于在操纵父容器了),将会发生什么? 因此是这个做不到的。不要浪费了力气了。

只能像1L说的,把iframe 包裹在一个div里面。拖到iframe外层的div的一部分(划出类似title的一部分)来进行实现。追问

谢谢回答。因画面需要,不能在iframe外包div

温馨提示:内容为网友见解,仅供参考
第1个回答  2014-08-05
可以阿, 不过不是直接移动iframe,而是 iframe外面加个div, 然后iframe 里 通过用parent,方法调用父窗口里加的那个div,实现移动.
直接parent 移动iframe 你可以试试, 应该很麻烦, 不如上面的方便.
第2个回答  2014-08-04
iframe本身的拖动会带来很多麻烦,客官可以在iframe外面再嵌套一个<div>(如果大小固定的话)。
使这个div 能过拖动,并且限定范围就好了。追问

谢谢!因为我需要这个ActiveX 所以不能用div包在外面。只能通过iframe来这个ocx等。

追答

Otz对于ActiveX不是很熟啊,

你的ocx是自己修改过的么?…听说ActiveX的安全漏洞很多啊。


我只能按照一般插件的思路给几点意见了,ActiveX没接触…

    试试看让iframe上浮,然后用绝对定位确定position,给title加上事件监听,然后,监听鼠标的位置,来定位iframe的位置……(纯js代码实现,比较累)

    ui draggable, 在外面做一个修饰性的<div>(这个真的不知道可不可行了),浮在iframe的拖拉栏上面,然后让它能过浮动……,最后,把iframe的position和这个修饰性的div对齐。

追问

谢谢你的辛苦回答。我的iframe 外面不能包div的,布局需要。

...ui draggable实现拖动iframe内的div 来移动整个iframe
只能像1L说的,把iframe 包裹在一个div里面。拖到iframe外层的div的一部分(划出类似title的一部分)来进行实现。

如何使用jQuery Draggable和Droppable实现拖拽功能
第一步:左侧元素可以拖官方给出的实例是直接在要拖动的元素上添加class="ui-widget-content"。最初在所有要拖动的元素都添加了“ui-widget-content”类别。但是测试拖动结果,发现元素只能在它所在的container里面拖动,再往右拖动,div会出现水平或垂直滚动条container设置了overflow:auto。第二步:将要拖...

如何使用jQuery Draggable和Droppable实现拖拽功能
$(draggableDiv).css({ "top": currentdiv.top, "left": currentdiv.left }); draggableDiv.trigger(event); \/\/取消默认行为 return false; }); $("#draggableDiv").mouseup(function (event) { $(this).css({ "height": "0" }); }); \/\/拖动元素时鼠标的位置 var dragDivLeft = 0; var drag...

jquery如何设置拖动的活动范围
parent: 只能在父容器内拖动 document: 在当前html文档的document下可拖动, 超出浏览器窗口范围时, 自动出现滚动条 widow: 只能在当前浏览器窗口的内容区域拖动, 拖动超出当前窗口范围, 不会导致出现滚动条... 数组: [x1, y1, x2, y2]以[开始水平坐标, 开始垂直坐标, 结束水平坐标, 结束垂直坐标]的方式划定...

如何使用jQuery Draggable和Droppable实现拖拽功能
转载第一步:左侧元素可以拖 官方给出的实例是直接在要拖动的元素上添加class="ui-widget-content"。最初我是在所有要拖动的元素都添加了“ui-widget-content”类别。但是测试拖动结果,发现元素只能在它所在的container里面拖动,再往右拖动,div会出现水平或垂直滚动条。不知道是不是自己在参数设置上不...

如何使用jQuery Draggable和Droppable实现拖拽功能
第一步 左侧元素可以拖 官方给出的实例是直接在要拖动的元素上添加class="ui widget content" 最初我是在所有要拖动的元素都添加了“ui widget content”类别 但是测试拖动结果 发现元素只能在它所在的 container里面拖动 再往右拖动 div会出现水平或垂直滚动条 不知道是不是自己在参数设置上不对 ...

相似回答