0

我有一个div。该 div 位于 iframe 中。那个 div 有一个宽度。我想通过 jQuery 获得这个宽度。附件是我这样做的一些冒险经历。请享受!

http://i.imgur.com/AXdfU61.jpg
http://i.imgur.com/Y9MB6Sg.jpg

编辑- 如果我以 $ 开头任何行,为什么我的控制台会抛出错误?

编辑 2 - 将问题简化为基础知识。

4

3 回答 3

1

在 jquery 中,您可以执行以下操作:

$("#iframeId").contents().find('#divId').width();

由于您的 iframe 没有 id,要么更改它,要么通过其他方式找到它,您可以使用 $('iframe') 列出文档中的所有 iframe。关于你的尝试,如果你使用 $('.span9') 这将找到这个类的所有元素,所以你还需要找到另一种方法来获取你的元素。

于 2013-05-16T17:42:07.157 回答
0

使用$("#IDofDIV").width(); 对于要调整大小/获取宽度的元素,您需要使用 ID 而不是类。类包含许多元素,同一个类甚至可能有数百个元素。您需要指定哪个元素,而不是一组元素。

因此,尽管还有许多其他方法,但使用 ID 将是最简单的事情。

这是.width();文档的链接。

此外,您使用的是 iFrame,因此您可能无法从控制台运行脚本。请参阅您的问题下的第一条评论,@PlantTheIdea 对此进行了解释。

于 2013-05-16T17:36:43.663 回答
0

我已经解决了。尽管我对这个问题的解决方法是有效的,但我在我的网站上遇到了 jQuery 的其他几个问题。即, $ 在控制台中不起作用。我知道我引用了 jQuery,但 $ 不是有效对象。

事实证明,当 jQuery 在非冲突模式下运行时,$ 在标准用例中不可用。相反,您将文档就绪函数传递给它,如下所示:

jQuery(文档).ready(函数 ($){

现在它是一个有效的对象,可以正常使用。这允许 jQuery 在非冲突模式下运行并且仍然可以访问 $

你可以在这里阅读:http ://codex.wordpress.org/Function_Reference/wp_enqueue_script

(jQuery noConflict Wrappers 部分)

希望这对某人有帮助!

于 2013-05-17T02:30:09.307 回答