mootools获取没有ID的元素的位置
mootools get position of an element which has no ID
除了一些基本的jQuery内容外,我对整个Javascript都比较陌生。
最近我接手了一个使用mootools的小型本地项目,我被卡住了。
我有几个页面具有相对简单的dom结构和内容,存储在数据库中。每个页面上的第一个元素要么是div,要么是具有固定宽度和高度的段落。
该元素有三个变体,每个变体的高度不同,这意味着我们在每个页面上都可以使用其中一个
<div class="header1"><img ...></div>
<p class="header2"><img ...></p>
<p class="header3"><img ...></p>
每个段落后面都有几个包含文字或图像的段落。
我的问题:我必须在页面的第一个元素(div或p)和以下内容之间放置一个带有打印图标的小div,但我不允许更改生成此页面的任何代码。
我们的想法是使用mootools(无论如何都是加载的)将div放置在第一个元素下方的绝对位置。这可以很容易地用jQuery完成,但我必须使用mootools加上元素没有id。
是否有任何简单的方法来获得的位置,或在页面加载,然后放置(position: absolute;)下的div权利?
到目前为止,我有这个(这是相当差),它记录了一个类"header1"的元素
window.addEvent('domready', function() {
$$('.header1').each(function(element){
console.log(element);
});
});
element.getPosition()
获得元素的x和y位置,这应该允许您在那里附近的某个地方创建一个新元素。getPosition()
可能在MooTools More中,这取决于您使用的版本。
在适当的位置添加一个新元素到DOM,而不需要复杂的定位可能更容易,尽管这取决于您的DOM。
从评论中判断您的反应,如果您只是想通过id以外的东西匹配文档中的单个元素,document.getElement()
是您需要的,这将与$$()
相同,但如果没有匹配,则返回第一个匹配或null
。
当然可以。问题是,如果没有ID,如何获得所需的元素。这和在jQuery中一样难,或者和在jQuery中一样容易。
查看Element.getPosition()
的mootools文档。
- 使用javascript查找元素位置的最快方法
- 当静态元素与滚动上的固定元素位置重叠时进行检测
- 另一个元素JAVAscript中的元素位置
- CSS.滚动后元素位置发生变化
- JQuery Mobile单击事件不起作用,具体取决于HTML中的元素位置
- 正在查找表行中的td元素位置
- jquery追加元素位置始终为0
- 如何通过JS移动元素位置而不闪烁
- 当按钮点击更改元素位置时,Javascript
- 在事件发生时获取元素位置的当前页面 URL,并将该 URL 输出到另一个页面上
- 更改 JS/D3 页上的元素位置
- 字典中由元素:位置对组成的移动元素
- 观察元素位置并对 AngularJS 中的更改做出反应
- JavaScript 设置宽度尺寸会更改元素位置
- Angularjs 获取元素位置
- 按类名获取元素位置
- 从数组中获取元素位置
- 如何在更改选择元素宽度时固定所有元素位置
- 破解以在滚动条出现时保持水平元素位置
- 将第一个数组中的元素位置与另一个数组进行比较