在jQuery中,使用$('<div>',{text:$ this.attr('title')})选择了什么?</div>

时间:2011-02-17 21:47:00

标签: jquery jquery-selectors

好吧,我是jQuery的新手,在浏览所有文档时,我在jQuery网站上发现了一个关于开发插件的tutorial。在阅读并试图理解时,我发现了一些我无法找到的答案。 6.3 Data部分中的示例中包含以下代码:

var $this = $(this),
         data = $this.data('tooltip'),
         tooltip = $('<div />', {
           text : $this.attr('title')
         });

我知道它是在一行上声明了几个变量,然而,最后一个 - 工具提示 - 是我感兴趣的那个。有人可以对我的无知耐心并解释我工具提示的内容是什么处理该行后的变量?

提前谢谢。

2 个答案:

答案 0 :(得分:1)

它创建一个新的div元素,并将$this.attr('title')的值传递给jQuery.fn.text

更多信息:http://api.jquery.com/jQuery/#jQuery2

  

jQuery(html,props)

     

html:定义单个独立HTML元素的字符串(例如或)。

     

props:要在新创建的元素上调用的属性,事件和方法的映射。

  

从jQuery 1.4开始,第二个参数可以接受一个映射,该映射由可以传递给.attr()方法的属性的超集组成。此外,可以传入任何事件类型,并且可以调用以下jQuery方法:val,css,html,text,data,width,height或offset。

答案 1 :(得分:0)

我认为

tooltip = $('<div />', {
           text : $this.attr('title')
         });

相当于:

tooltip = $('<div />').text( $this.attr('title') );

如果您在Firefox或Chrome下运行,可能会尝试使用console.log(..any ..)。精确地看到变量

是非常有帮助的