作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想通过偏移量找到 DOM 元素 ID/值。可能图片解释得很清楚。我有一个指定值范围的 div。和更改值但范围 div 的按钮是固定的。现在我想在按钮事件之后找到范围值。
this my html code.
<div ng-app='myApp' ng-controller="Slider" id="slider">
<li class="year ruler" ng-attr-id="{{y.year}}" ng-repeat="y in years" style="top: {{y.top}}px">{{y.year}}<label class="index"> -</label></li>
<div id="ranges" class="ranges"></div>
<div class="panel">
<button ng-click="up()">up</button>
<button ng-click="down()">down</button><br>
<button ng-click="zoomOut()">+</button>
<button ng-click="zoomIn()">-</button>
</div>
我使用这段代码来查找值但警告未定义
var dom= $(document.body).find('[offsetTop = '+80+']');
alert($(dom).attr('id'));
最佳答案
您可以使用 jQuery 的过滤功能根据元素的偏移量过滤元素
function getElementByTopOffset(selector, offset){
return $(selector).filter(function( index, elem) {
return $(elem).offset().top == offset;
});
}
此外,如果您喜欢完全使用 Vanilla ,这里可能是一个解决方案:
function getElementByTopOffset(selector, offset){
return [].filter.call(document.querySelectorAll(selector), function(elem) {
return elem.offsetTop == offset
});
}
关于javascript - 如何通过其偏移量查找 DOM 元素 ID/值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28792877/
我是一名优秀的程序员,十分优秀!