Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/458.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.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
Javascript 这条线是什么意思&引用;this.parentNode.firstChild.nodeName“;在jQuery Hilghlight插件中_Javascript_Jquery_Html_Jquery Plugins_Highlight - Fatal编程技术网

Javascript 这条线是什么意思&引用;this.parentNode.firstChild.nodeName“;在jQuery Hilghlight插件中

Javascript 这条线是什么意思&引用;this.parentNode.firstChild.nodeName“;在jQuery Hilghlight插件中,javascript,jquery,html,jquery-plugins,highlight,Javascript,Jquery,Html,Jquery Plugins,Highlight,这条线有什么用 this.parentNode.firstChild.nodeName 以下代码来自jQuery突出显示插件 这将获取引用This的第一个同级标记的名称(如果它是元素,请参阅的注释) 因为它没有被分配,所以很奇怪。如果调用它是为了产生副作用(可能是为了修复浏览器错误),则不清楚(应该对此进行注释) 那个插件的代码有点奇怪 这将获取引用This的第一个同级标记的名称(如果它是元素,请参阅的注释) 因为它没有被分配,所以很奇怪。如果调用它是为了产生副作用(可能是为了修复浏览器错误

这条线有什么用

this.parentNode.firstChild.nodeName
以下代码来自jQuery突出显示插件

这将获取引用
This
的第一个同级标记的名称(如果它是元素,请参阅的注释)

因为它没有被分配,所以很奇怪。如果调用它是为了产生副作用(可能是为了修复浏览器错误),则不清楚(应该对此进行注释)

那个插件的代码有点奇怪

这将获取引用
This
的第一个同级标记的名称(如果它是元素,请参阅的注释)

因为它没有被分配,所以很奇怪。如果调用它是为了产生副作用(可能是为了修复浏览器错误),则不清楚(应该对此进行注释)


该插件的代码有点奇怪。

此.parentNode.firstChild.nodeName没有将其值赋给任何变量。基本上它是一个属性而不是一个函数,所以它不会产生任何效果。看起来毫无意义。它应该先找出当前节点的parentNode,然后找出该parentNode的第一个子节点,然后再得到它的节点名。但在本例中,它在您提供的代码片段中没有任何地方使用

此.parentNode.firstChild.nodeName
未将其值赋给任何变量。基本上它是一个属性而不是一个函数,所以它不会产生任何效果。看起来毫无意义。它应该先找出当前节点的parentNode,然后找出该parentNode的第一个子节点,然后再得到它的节点名。但是在这种情况下,它在您提供的代码片段中的任何地方都没有得到使用,请考虑以下示例:

<span class= "highlight">...</span>
<span class= "highlight">...</span>
<span class= "highlight">...</span>
<span class= "highlight">...</span>
....
。。。
...
...
...
....
现在有多个具有相同类名的跨。 如果您试图突出显示其中一个跨度,则会触发jquery

现在突出显示的跨度基于
this.parentNode.firstChild.nodeName

这是指有高亮显示请求的范围,其余的只是范围内的内部构件

考虑以下情况,例如:

<span class= "highlight">...</span>
<span class= "highlight">...</span>
<span class= "highlight">...</span>
<span class= "highlight">...</span>
....
。。。
...
...
...
....
现在有多个具有相同类名的跨。 如果您试图突出显示其中一个跨度,则会触发jquery

现在突出显示的跨度基于
this.parentNode.firstChild.nodeName


这是指有高亮显示请求的范围,其余的只是范围内的内部构件

它得到了最好的结果。如果节点是一个元素,它将是标记名,但如果它是其他类型的节点,它将是不同的。e、 g.在某些浏览器中,它可能是一个文本节点,其中节点名将是文本。@RobG是的,我想我应该做出区分。@alex你还说插件代码是weired吗?它只是一个修复程序?它得到了正确的答案。如果节点是一个元素,它将是标记名,但如果它是其他类型的节点,它将是不同的。e、 g.在某些浏览器中,它可能是一个文本节点,其中节点名将是文本。@RobG是的,我想我应该做出这种区分。@alex你还说插件代码是weired吗?它只是一个修复程序吗?推测:它可能被插件作者用于调试,从未被删除过(例如,以前是在
console.log
中,后来被删除了,但变量留在了里面,以防以后再次需要)。jQuery中有这样的代码,其中一个属性被访问但没有分配,但它被调用是因为它的副作用..hmm..很可能。但是他可以删除整行
console.log(this.parentNode.firstChild.nodeName)
,而不是仅仅删除
console.log(
…但是现在它是无害的:数据真的很有趣,但IIRC是什么?你能告诉我更多吗?@Shades88如果我回忆正确,但我查找了它并找到了源代码(看起来我大部分回忆都是正确的):)推测:插件作者可能在调试中使用过它,但从未删除过(例如,它曾位于
控制台.log中,后来被删除,但变量保留在其中,以防以后再次需要)。jQuery中有这样的代码,其中一个属性被访问但没有分配,但它被调用是因为它的副作用。。嗯……很可能。但是他可以删除整行
console.log(this.parentNode.firstChild.nodeName)
,而不是只删除
console.log(
…但目前它是无害的:d这真的很有趣,但IIRC是什么?你能告诉我更多吗?@Shades88如果我回忆正确,但我查找了它并找到了源代码(看起来我大部分都回忆正确):)你问的是
.parentNode
.firstChild
.nodeName
属性在一般意义上(我认为这是不言自明的),或者该行在特定代码段中的作用(回答:没有-表达式的结果没有使用)。我很确定你问的是后者,但是…?@nnnnnn那为什么会有电话?你可以查一下原始代码,我不知道。这可能是因为访问这些属性中的一个或多个会在某些浏览器中产生一些副作用,也可能只是一个错误。您是否在问
.parentNode
.firstChild
.nodeName
属性在一般意义上做了什么(我认为这是不言自明的),或者该行在特定代码段中所做的操作(回答:nothing-表达式的结果未被使用)。我很确定你问的是后者,但是…?@nnnnnn那为什么会有电话?你可以查一下原始代码,我不知道。这可能是因为访问其中一个或多个属性会在某些浏览器中产生一些副作用,也可能只是一个错误。
<span class= "highlight">...</span>
<span class= "highlight">...</span>
<span class= "highlight">...</span>
<span class= "highlight">...</span>
....