Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过jQuery实用地确定iFrame中div的宽度_Jquery_Html_Iframe_Width - Fatal编程技术网

通过jQuery实用地确定iFrame中div的宽度

通过jQuery实用地确定iFrame中div的宽度,jquery,html,iframe,width,Jquery,Html,Iframe,Width,我有一个div,它住在一个iframe里。那个div有一个宽度。我想通过jQuery获得这个宽度。附件是我在这方面的一些冒险经历。请欣赏 编辑-如果我以$开始任何一行,为什么我的控制台会抛出错误 编辑2-将问题简化为基本问题。使用$(“#IDofDIV”).width() 对于要调整大小/获得宽度的元素,需要使用ID而不是类。类包含许多元素,同一类中甚至可能有数百个元素。您需要指定哪个元素,而不是一组元素 因此,使用ID将是最简单的事情,尽管还有许多其他方法 此外,您正在使用iFrame,

我有一个div,它住在一个iframe里。那个div有一个宽度。我想通过jQuery获得这个宽度。附件是我在这方面的一些冒险经历。请欣赏


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

编辑2-将问题简化为基本问题。

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

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


此外,您正在使用iFrame,因此从控制台运行脚本时可能会遇到问题。请参见您问题下的第一条评论,@plantheidea对此给出了解释

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

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

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

我已经解决了它。虽然我解决这个问题的方法可行,但我的站点上的jQuery还有其他几个问题。也就是说,$在控制台中不工作。我知道我引用了jQuery,但$不是有效的对象

事实证明,当jQuery在非冲突模式下运行时,$在标准用例中不可用。而是将document ready函数传递给它,如下所示:

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

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

您可以在此处阅读:

(jQuery无冲突包装器部分)


希望这对其他人有所帮助!

您尝试访问的项目位于iframe中。您可能会遇到这种情况=>@plantheidea从我对那篇文章的理解来看,这是关于加载跨域内容。在我的示例中,我更改了URL,但父项和子项都在同一个域中。您不应该在第一次answ后停止呃,因为第二个是有价值的。它与@joao回答的一样。你说当你用$开始一行时,你的控制台会抛出错误。我怀疑你没有在页面上加载jQuery,或者你还有另一个绑定到$的框架。试着只运行“$”并发布结果,也试着只运行“jQuery”并发布结果。$-und定义| jQuery-函数(e,t){return new v.fn.init(e,t,n)}让我尝试一下。我正在使用Wordpress插件(lighbox plus colorbox)来实现iframe,所以我必须修改他们的代码以添加ID。我会尽快回来。我现在已经尝试通过ID访问它,但仍然存在相同的错误。(见上面的评论)如果您在这个问题上需要更多帮助,请询问:PI跟踪了代码,并在iframe中添加了一个名为“gameframe”的ID,在span9中添加了一个名为“gamebox”的ID您的框架中包含了jquery?这段代码是正确的,您一定是做错了什么,我确实认为还有其他事情正在进行。与此同时,我只是使用PHP在服务器上查找swf的大小,然后将其放入echo'd javascript.Works中。这不是我想要的,但它可以工作。感谢所有的帮助,伙计。尝试键入只使用$('#frameID')并查看控制台中返回的对象…我确信这是正确的代码。如果您可以检查jquery标题中的scipt标记