读书人

在方法中使用this做为参数的有关问题

发布时间: 2012-04-18 15:01:59 作者: rapoo

在方法中使用this做为参数的问题

<div class="left_MenuTitle" onclick="switchMenu(this)">
<div class="arrowUp" ></div>6666666666</div>
<div>

js方法如下:
function switchMenu(obj) {
var arrowDiv = obj.firstChild;
alert(arrowDiv.className);
}

执行时提示undefined,请问是怎么回事?

[解决办法]
<div class="left_MenuTitle" onclick="switchMenu(this)"><div class="arrowUp" ></div>6666666666</div><div>
<script>
function switchMenu(obj) {
var arrowDiv = obj.firstChild;
alert(arrowDiv.className);
}
</script>

换行的话,会把textNode 认为firstChild
[解决办法]

HTML code
 <div class="left_MenuTitle" onclick="switchMenu(this)"><div class="arrowUp" ></div>6666666666</div>  <div>
[解决办法]
探讨

HTML code
<div class="left_MenuTitle" onclick="switchMenu(this)"><div class="arrowUp" ></div>6666666666</div>
<div>


换行也算节点
子元素和父元素放一行上

[解决办法]
HTML code
    <div class="left_MenuTitle" onclick="switchMenu(this)">        <div class="arrowUp" ></div>6666666666</div>    </div>    <script>        function switchMenu(obj) {            var arrowDiv = obj.firstElementChild || obj.firstChild;            alert(arrowDiv.className);        }    </script> 

读书人网 >JavaScript

热点推荐