小编THE*_*had的帖子

jQuery.data和jQuery._data(下划线数据)有什么区别?

在浏览源代码时,我注意到'toggle'应该jQuery._data用来存储元素的状态.我检查的jQuery.cache对象中铬,发现元素的数据对象有另一个目标下它由字的jQuery前面添加一个数字,我猜唯一标识.但是,我没有看到关于元素状态的数据.简单{olddisplay: 'block'}.关于jQuery._data的目的以及它本身如何工作的任何线索?

我一整天都在盯着源头......请不要告诉我查看来源.我的眼睛和大脑会感谢你.

javascript jquery

25
推荐指数
1
解决办法
1万
查看次数

如何在不将其呈现到页面的情况下获取 div 的正确高度属性?

我正在实现一个 Wordpress 主题,其中内容垂直滑入页面。为此,我需要先测量包含内容的 div 的大小,而不是先对其进行明显渲染。我试图在没有 Ajax 的情况下完成所有这些工作。

这是我迄今为止发现的:

我可以轻松加载文档,读取大小,然后使用 javascript 隐藏 div。不幸的是,有一个非常明显(并且不可接受)的闪烁,因为 javascript 没有足够快地隐藏 div。还有一个问题是,如果将图像放入内容中,我必须等到它们被渲染才能获得真实大小……没有 bueno。

另一种选择是使用 CSS 隐藏内容,但如果用户没有启用 javascript,他们只会盯着一个空白页面。

这把我带到了我现在的位置。

我有一段 javascript 在声明样式表后立即运行,它更改了样式表链接元素的位置,然后使用特定于 javascript 的样式表重新呈现页面。这解决了在读取大小之前必须隐藏内容的问题。

这是通过将包含内容的 div 绝对定位在页面 9999 像素之外来实现的。

#content {
  position: absolute;
  left: -9999px;
}
Run Code Online (Sandbox Code Playgroud)

此时,我使用 jquery 检索内容的高度,代码如下:

$('#content').height();
Run Code Online (Sandbox Code Playgroud)

问题是,返回的数字大小不正确,比实际内容小得多。当我将 css 更改为:

#content {
  position: absolute;
  left: 0px;
}
Run Code Online (Sandbox Code Playgroud)

它正确呈现。是什么赋予了??有我不知道的错误吗?这发生在 Chrome 和 Firefox 中。

你可以在这里自己查看http://thethechad.com/wordpress

- 更新 - - - - - - - - - - - - - - - - - - - …

html javascript css jquery

7
推荐指数
1
解决办法
3704
查看次数

在筛选选择器中的其他参数之前,jQuery是否会搜索ID?

这个问题与绩效有关.

如果我使用如下选择器

$('#myID a') // Does this find #myID and filter by a?
Run Code Online (Sandbox Code Playgroud)

或者我应该写这样的声明?

$('#myID').find('a')
Run Code Online (Sandbox Code Playgroud)

我不确定jQuery是否足够智能以首先使用ID执行此语句,或者它是否像CSS一样操作并从右向左读取.使用标签并不是一件大事,但是当你运行类似的东西时

$('#myID .myClass')
Run Code Online (Sandbox Code Playgroud)

它在性能上有很大的不同.

javascript jquery

5
推荐指数
1
解决办法
98
查看次数

标签 统计

javascript ×3

jquery ×3

css ×1

html ×1