A标签中通过href和onclick传递的this对象实现思路

简介: A标签中通过href和onclick传递的this对象实现思路
14b8eaeaa153428d29db.jpg

想传递当前对象给一个函数,于是就将这个URL写成”JavaScript:shoControlSidebar(this)”,可是结果发现这并不可行,接下来为大家详细介绍下解决方法

在blog的后台管理中允许为一个分类添加一个地址,但是不好添加onclick事件。想传递当前对象给一个函数,于是就将这个URL写成"Javascript:shoControlSidebar(this)",可是结果发现这并不可行,传递过去的参数是一个对象,但是却得不到任何其他信息。我想得到的是innerText,而这个this并非指向它所在的A标签。

这是不同的地方。

当使用onclick=”shoControlSidebar(this)”的时候,解释器会给他包装一个匿名函数,变成了: 
复制代码 代码如下:


a.onclick = function anonymous(){
    shoControlSidebar(this);
}

这个this指的就是a这个对象,而使用href的方式时,由于是一个地址,这个this就无处可指了。 
复制代码 代码如下: 


<a href="javascript:void(0);" onclick="test(this);">A标签测试a>

复制代码 代码如下:


想获取A 中的innerHTML
如果href="test(this);" 不但获取不到值,而且程序将退出,href引向不对。

复制代码 代码如下:


function test(obj){
alert(obj);
//js方式获取开始标签和结束标签中间插入内容
alert(obj.innerHTML);
//jquery方式获取开始标签和结束标签中间插入内容
alert($(obj).html());
} 
目录
相关文章
|
5月前
|
JavaScript
原生JS修改html内容不影响绑定的点击事件 请认准insertAdjacentHTML、insertAdjacentText方法
原生JS修改html内容不影响绑定的点击事件 请认准insertAdjacentHTML、insertAdjacentText方法
原生JS修改html内容不影响绑定的点击事件 请认准insertAdjacentHTML、insertAdjacentText方法
|
4月前
|
搜索推荐 前端开发 UED
元素的alt和title属性相关细节知识
元素的alt和title属性相关细节知识
|
6月前
a标签 href和onclick 传递的this区别
a标签 href和onclick 传递的this区别
|
9月前
|
JavaScript
原生js生成唯一id方法
原生js生成唯一id方法
79 0
|
10月前
|
JavaScript 前端开发
【JavaScript】给一个div块添加链接,实现点击跳转页面
【JavaScript】给一个div块添加链接,实现点击跳转页面
|
移动开发 JavaScript
不写Js也能实现点击事件?说说你不知道的HTML之<Label>标签
不写Js也能实现点击事件?说说你不知道的HTML之<Label>标签
223 0
不写Js也能实现点击事件?说说你不知道的HTML之<Label>标签
|
JavaScript
javascrip通过id获取标签案例
javascrip通过id获取标签案例
71 0
html中a标签属性parent和self的举例说明
html中a标签属性parent和self的举例说明
348 0
html中a标签属性parent和self的举例说明
|
JavaScript 前端开发
html页面元素onclick 和 jquery绑定click执行顺序
html页面元素onclick 和 jquery绑定click执行顺序
309 0
|
JavaScript
jquery选择器找到含有href属性的所有a标签
jquery选择器找到含有href属性的所有a标签
386 0