如何使用$(this)来动态检索锚点标记的title属性
How to use $(this) to dynamically retrieve the title attribute of an anchor tag
我正在尝试为我的网站开发一个朋友标签系统。
我有一个锚标记围绕着我的div标记,它有一个标题。我试图使用以下代码从中检索标题,但结果总是未定义的。
<a href="#" class="add-link" onclick="addFunc()" title="test1">
<div class="divclass">
blabla
</div>
</a>
function addFunc(){
var username = $(this).attr('title');
$('#content').html(username);
}
http://jsfiddle.net/0f4mun8r/3/
知道为什么吗?
谢谢!
您有三个问题。
第一:
您已经将JS Fiddle配置为将所有代码封装在一个onload处理程序中。这将停止函数作为全局函数,因此当您调用addFunc
时,将找不到它。
第二:
您正在调用jQuery,但尚未包含jQuery库。
第三:
this
的值取决于调用函数的方式。
当调用onclick
函数时,this
是元素。
当调用addFunc
时(如果您修复了其他问题),由于您没有指定上下文,因此this
是window
(默认对象)。
不要使用内部事件属性。使用JavaScript绑定事件处理程序。
jQuery(".add-link").on('click', addFunc);
如果您使用jQuery,那么请在您的页面中包含库。
您的fiddle中没有包含jquery。此外,如果您使用jquery将您的事件与它绑定,如下所示:
$(".add-link").on("click", function addFunc(){
var username = $(this).attr('title');
$('#content').html(username);
});
http://jsfiddle.net/0f4mun8r/4/
尝试用类名调用它
$('.add-link').click(function() {
var username = $(this).attr('title');
alert(username);
$('#content').html(username);
});
相关文章:
- 如何获取元素's的title属性
- 仅将CSS类添加到那些没有“title”属性的链接中
- 在D3.js中为svg:g元素添加title属性
- 在Oracle Apex 5.0中,无法在侧面导航列表模板中使用title属性
- 工具提示JavaScript在未给出“title”属性时会中断以下表单元素
- 使用属性 “title” 将 html 元素链接到 jQuery.click()
- 在 JS 的单选按钮元素 (HTML) 中使用 title 属性
- Jquery,实时“title”属性更改
- jQuery:删除浏览器生成的 title 属性
- img文件名作为CSS中的title和alt属性
- AngularJS “{{}}” insite title 属性不起作用
- 访问嵌套对象时无法读取未定义的属性“title”
- jQuery 设置 input.value = input.title(或其他输入属性)
- jQuery/JavaScript 查询关于 title 属性
- 如何使用$(this)来动态检索锚点标记的title属性
- 修复了将CSS应用于title属性的脚本的错误
- 如何从tinymce文本区域中删除title属性
- 使用AngularJS将元素文本复制到title属性的干净方法
- 从所有HTML元素中删除属性title
- 属性'title'已经改变了.如何使工具提示理解它