如何使用jQuery更改元素的title属性

我有一个表单input元素,并希望更改其标题属性。 这应该很容易,但由于某种原因,我无法find如何做到这一点。 这是如何做的,我该在哪里以及如何寻找如何做到这一点?

在我们编写任何代码之前,我们来讨论属性和属性之间的区别。 属性是您应用于HTML标记中元素的设置; 浏览器然后parsing标记并创build包含用属性值初始化的属性的各种types的DOM对象。 在DOM对象上,比如一个简单的HTMLElement ,你几乎总是想要使用它的属性 ,而不是它的属性集合。

目前的最佳做法是避免使用属性,除非是自定义的,或者没有相应的属性来补充属性。 由于title确实作为许多HTMLElement的读/写属性存在,我们应该利用它。

你可以在这里或这里阅读更多关于属性和属性的区别。

考虑到这一点,让我们操纵那个title

获取或设置一个没有 jQuery的元素的title属性

由于title是公共属性,因此您可以在任何使用普通JavaScript支持的DOM元素上进行设置:

 document.getElementById('yourElementId').title = 'your new title'; 

检索几乎相同; 没什么特别的:

 var elementTitle = document.getElementById('yourElementId').title; 

如果你是一个优化的话,这将是改变标题的最快方法,但是因为你需要jQuery:

使用jQuery(v1.6 +)获取或设置元素的title 属性

jQuery在v1.6中引入了一个新的方法来获取和设置属性。 要设置元素的title属性,请使用:

 $('#yourElementId').prop('title', 'your new title'); 

如果您想检索标题,请省略第二个参数并捕获返回值:

 var elementTitle = $('#yourElementId').prop('title'); 

查看jQuery的prop() API文档 。

如果你真的不想使用属性,或者你在v1.6之前使用jQuery的版本,那么你应该阅读:

使用jQuery获取或设置元素的title 属性 (版本<1.6)

您可以使用以下代码更改title 属性

 $('#yourElementId').attr('title', 'your new title'); 

或者用以下方法检索它

 var elementTitle = $('#yourElementId').attr('title'); 

查看jQuery的attr() API文档 。

在jQuery的UI模式对话框中,你需要使用这种结构的原因是:

 $( "#my_dialog" ).dialog( "option", "title", "my new title" ); 

我相信

 $("#myElement").attr("title", "new title value") 

要么

 $("#myElement").prop("title", "new title value") 

应该做的伎俩…

我想你可以在jQuery文档中find所有的核心function,尽pipe我讨厌格式化。

另一个select,如果你愿意,可以从jQuery对象中获取DOM元素,并在其上使用标准的DOM访问器:

 $("#myElement")[0].title = "new title value"; 

正如其他人所说的,“jQuery方法”是使用attr()方法。 请参阅attr()的API文档。

 jqueryTitle({ title: 'New Title' }); 

第一个标题:

 jqueryTitle('destroy'); 

https://github.com/ertaserdi/jQuery-Title

如果你正在创build一个div,并试图添加标题。

尝试

var myDiv= document.createElement("div"); myDiv.setAttribute('title','mytitle');