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

 更新时间:2013年04月19日 17:31:05   作者:  
想传递当前对象给一个函数,于是就将这个URL写成"Javascript:shoControlSidebar(this)",可是结果发现这并不可行,接下来为大家详细介绍下解决方法
在blog的后台管理中允许为一个分类添加一个地址,但是不好添加onclick事件。想传递当前对象给一个函数,于是就将这个URL写成"Javascript:shoControlSidebar(this)",可是结果发现这并不可行,传递过去的参数是一个对象,但是却得不到任何其他信息。我想得到的是innerText,而这个this并非指向它所在的A标签。

这是<a href="Javascript:shoControlSidebar(this)">和<a href="javascript:void(0)" onclick="shoControlSidebar(this)">不同的地方。

当使用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());
}

相关文章

  • 微信小程序如何实现数据共享与方法共享详解

    微信小程序如何实现数据共享与方法共享详解

    这篇文章主要给大家介绍了关于微信小程序如何实现数据共享与方法共享的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2022-01-01
  • 详解JavaScript对象和数组

    详解JavaScript对象和数组

    这篇文章主要介绍了JavaScript对象和数组,需要的朋友可以参考下
    2015-12-12
  • JavaScript实现网页电子时钟

    JavaScript实现网页电子时钟

    这篇文章主要为大家详细介绍了JavaScript实现网页电子时钟,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-06-06
  • html+js实现动态显示本地时间

    html+js实现动态显示本地时间

    显示本地时间的方法有很多,在本文将为大家介绍下如何使用html+js实现动态显示本地时间,感兴趣的朋友可以了解下
    2013-09-09
  • JS实现颜色梯度与渐变效果完整实例

    JS实现颜色梯度与渐变效果完整实例

    这篇文章主要介绍了JS实现颜色梯度与渐变效果,结合完整实例形式分析了js颜色渐变所涉及的数学运算与页面样式动态操作相关技巧,需要的朋友可以参考下
    2016-12-12
  • 第六章之辅组类与响应式工具

    第六章之辅组类与响应式工具

    Bootstrap,来自 Twitter,是目前最受欢迎的前端框架。本文给大家介绍BootStrap组件之辅组类与响应式工具,感兴趣的朋友一起学习吧
    2016-04-04
  • 微信小程序列表时间戳转换实现过程解析

    微信小程序列表时间戳转换实现过程解析

    这篇文章主要介绍了微信小程序列表时间戳转换实现过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10
  • JavaScript中常用的验证reg

    JavaScript中常用的验证reg

    js验证实用性非常高,用途非常广泛,用于校验ip地址的格式等操作,本文给大家介绍JavaScript中常用的验证reg,非常不错,具有参考借鉴价值,感兴趣的朋友一起看看吧
    2016-10-10
  • 面向对象Javascript核心支持代码分享

    面向对象Javascript核心支持代码分享

    Javascript做面向对象开发的时候,总是会用到很多模拟面向对象特性的方法,这些方法就构成了支撑面向对象Javascript的核心代码
    2012-05-05
  • 用Javascript数组处理多个字符串的连接问题

    用Javascript数组处理多个字符串的连接问题

    小技巧 用Javascript数组处理多个字符串的连接问题,大家可以参考下。
    2009-08-08

最新评论