我希望得到一个元素的正确位置。我已经尝试了attr('right')
,并且我已阅读有关.position().right
的API文档,该文档不存在(我相信)。
http://jsfiddle.net/xavi3r/vcuq7/
是一个例子,我希望提醒正确的值。
答案 0 :(得分:22)
您想要找到CSS right
属性的值吗?
$('#foo').css('right');
简单的Javascript:
document.getElementById('foo').style.right;
但是,如果你想找到从元素右边缘到另一个元素右边缘的计算距离,那么你必须自己做,结合{{1} }和.position().left
答案 1 :(得分:12)
我认为这有效:
jQuery('#elem').offset().left + jQuery('#elem').width()
答案 2 :(得分:4)
$(document).width() - ($('#elem').offset().left + $('#elem').width());
应该为您提供元素右侧的空间,然后您可以将其设置为'右边的值。元素位置的属性;
答案 3 :(得分:4)
CSS值仅在通过样式或$ .css()设置时才有效。
但是如果你需要获得一个对象的正确位置,你应该使用javascript / jquery来做。
虽然有一些有效的解决方案,但重要的是要注意$ .fn.width()不会考虑填充和边框。因此,最好使用 outerWidth()。
示例:
$(document).width() - ($('#elem').offset().left + $('#elem').outerWidth());
您甚至可以创建$ .fn函数来获取值:
$.fn.right = function() {
return $(document).width() - (this.offset().left + this.outerWidth());
}
然后使用它:
$('#elem').right();
答案 4 :(得分:2)
您可以尝试.css
.css("right");
答案 5 :(得分:0)
如@avernet在评论中所指出的那样,相当于假设的.position()。right就是这样的表达式:
$('#foo').offsetParent().width() - ($('#foo').position().left + $('#foo').width());