【发布时间】:2013-01-25 16:44:29
【问题描述】:
我需要在 Drupal7 生成的 HTML 站点(安装了 jQuery_update)中找到表格 TD 元素的正确 .offset() 位置。我用
$('#contenttable td').each(function(){
console.log($(this).offsetParent());
console.log($(this).offset().left);
});
在我的
jQuery(function($) {
//$(document).ready(function(){
我的 script.js 获取 offset().left-position 但控制台总是跟踪我所有 TD 的“0”。
当我使用 Safari 开发者控制台的输出时
jQuery('#contenttable td:nth-child(2)').offset().left
是“1728”,所以它似乎完全可以工作。但为什么它在我的 DOCUMENT.READY 中不起作用?
顺便说一句,.offsetParent() 是 BODY... 并且将某些父 DIV 的位置更改为绝对或相对也没有任何变化。 太好了!
编辑:似乎根本不适用于任何元素。
【问题讨论】:
-
你知道
jQuery(function($) {和$(document).ready(function(){做同样的事情,对吧?所以像这样嵌套它们是不必要的。只是想指出来 -
为什么你一直混合使用
jQuery()和$()?坚持一个。使用$很好,除非您正在使用另一个使用该标识符的库......比如原型。你在使用其他类似的库吗? -
是的,我愿意。在 Drupal 中,你需要像这样嵌套 jQuery。
-
什么意思?无论如何,尝试使用
console.log(jQuery(this).offsetParent());- 注意我是如何将其更改为jQuery而不是$ -
@Ian:但这似乎不是问题所在。有什么想法吗?
标签: javascript jquery html drupal-7 offset