javascript中this的问题
html:<lionclick="clist()">menu</li>js:functionclist(){this.style.background="red";}为什...
html:
<li onclick="clist()">menu</li>
js:
function clist(){
this.style.background="red";
}
为什么我这样不能实现单击菜单背景变色呢?
而改成这样就没问题:
html:
<li onclick="clist(this)">menu</li>
js:
function clist(obj){
obj.style.background="red";
} 展开
<li onclick="clist()">menu</li>
js:
function clist(){
this.style.background="red";
}
为什么我这样不能实现单击菜单背景变色呢?
而改成这样就没问题:
html:
<li onclick="clist(this)">menu</li>
js:
function clist(obj){
obj.style.background="red";
} 展开
4个回答
展开全部
function clist(){
this.style.background="red";
}
函数没有参数 怎么能直接调用 this 的属性呢?如果你不想写到外面,可以这样写: <li onclick=function(){this.style.background="red";
}>menu</li>
this.style.background="red";
}
函数没有参数 怎么能直接调用 this 的属性呢?如果你不想写到外面,可以这样写: <li onclick=function(){this.style.background="red";
}>menu</li>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在函数添加参数this,是指向函数传入该控件对象!如果直接用this点样式,显然找不到北?!不知道this代表哪个…个人理解,仅供参考!呵呵
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2010-06-25
展开全部
this,在javascript里是比较怪异的东西。但是了解了机制就清楚了。this和普通面向对象里的this是不一样的。因为js根本就不是面向对象,js是函数式编程。this,在javascript里实际指的是上下文,而非“类”。javascript里没有类。所以你这里只能把对象传进去。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询