【问题标题】:What is more correct "setPosition" or "style.left/right"?什么是更正确的“setPosition”或“style.left/right”?
【发布时间】:2013-05-19 18:37:00
【问题描述】:

我正在尝试在 iFrame 上拖动 mootools。

问题:

使用是不是更正确

var div = parent.document.getElementById("price_info");
div.setPosition({ x: e.clientX-offX });

var div = parent.document.getElementById("price_info");
div.style.left = (e.clientX-offX) + 'px';

此信息有望帮助我解决更大的问题... (here)

【问题讨论】:

  • setPosition 是非标准的。对吗?
  • 有趣的@techfoobar,你能解释一下吗?你的意思是它的 mootools 而不是 vanilla JS?
  • 是的,有点……实际上,我没有看到 mootools 标签! :)
  • 顺便说一句,这在旧 IE 中可能不起作用,因为您没有扩展元素并且它不会从 mootools 对 Element.prototype 的更改继承 - 而 div.style.left 将或 parent.document.getElement('#someid'); 返回一个 mootools 扩展的 el。

标签: javascript position mootools


【解决方案1】:

归结为同一件事。 setPosition() 写入元素的 style 对象,就像您手动执行的操作一样。

我想如果你决定在框架中构建你的代码,你应该尽可能使用它的 API,除非有特定的理由忽略它并使用 vanilla JS 代替它。

此外,setPosition() 返回受影响的元素,而 .style 不返回,因此这可能是与链接有关的一个因素。

【讨论】:

    猜你喜欢
    • 2013-08-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-28
    相关资源
    最近更新 更多