如何使用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');
如果你正在创build一个div,并试图添加标题。
尝试
var myDiv= document.createElement("div"); myDiv.setAttribute('title','mytitle');