Guiders.js attach不在iframe内部工作

时间:2012-10-23 10:43:16

标签: javascript guiders.js

我正在使用guiders.js向用户提供提示。 虽然当div在iframe中时使用attachTo参数时遇到问题。

以下是指导者的代码:

    guiders.createGuider({
    attachTo: '#'+thisId,
    buttons: [{name: "Ok", onclick: function(){
closeEdit();
    guiders.hideAll();
    }
    }],
    description: "<input value='new text'>",
    id: "guiderToChangeParameter",
    position: 3,
    title: "title",
    width: 400
    }).show();

如果thisId引用页面内的div id,则attachTo可以正常工作。

如果thisId引用iframe中的div,则指南会显示但未附加到div

这是guiders.js库的正常行为吗?有没有办法真正附加到iframe中的div?

jsfiddle显示attachTo working:http://jsfiddle.net/y3mzP/1/ jsfiddle不允许iframe所以我不能重现。

1 个答案:

答案 0 :(得分:0)

我不希望任何JavaScript能够访问iFrame,而不仅仅是guiders.js。如果您希望父页面上的元素位于父页面上的元素附近,则必须使用iFrame消息发布(https://developer.mozilla.org/en-US/docs/DOM/window。 postMessage)在内部有一个脚本将目标元素的x和y位置转发到父框架上的脚本。

在您的情况下,您还可以创建一个绝对位于父页面上的透明div,使其大致位于您期望内部元素的位置。然后让Guiders附加到那个透明的div。