hho*_*oud 7 javascript dom prototypejs
我是Protoype.JS的新手,只是稍微测试一下,因为我听说它很好,但我很快就被卡住了.就像使用jQuery一样简单,将文本放在元素中似乎是世界末日.我已经尝试过多种方式的innerHTML,但我唯一能得到的是"未定义".
alert($$('.mnu_item').innerHTML);
alert($('content').innerHTML);
这些都不起作用.Content是id为"content"的div,.mnu_item是类".mnu_item"的锚标记.我不知道问题是什么,可能是愚蠢的事情但如果有人能指出我正确的方向会很棒!
编辑:我发现不是innerHTML不起作用,但它是类选择器.上面代码中的第二行确实有效.如果这不是正确的方法,如何在最新的Prototype版本中按类选择元素?
运行脚本时是否加载了DOM?如果您没有在a中运行此代码window.onload或将其放在正文的末尾,那么元素在运行时就不存在了.
尝试将脚本放在结束</body>标记内.
<body>
    <!-- my content -->
    <script type="text/javascript">
        alert($('content').innerHTML);
    </script>
</body>
此外,您的第一行正确选择,但将返回一个元素数组,所以innerHTML将返回undefined.
要迭代Array,您可以这样做:
$$('.mnu_item').each(function(val,i) {
    alert(val.innerHTML);
});
或者如果您想最终获得innerHTML值的数组,请执行以下操作:
var values = $$('.mnu_item').map(function(val,i) {
    return val.innerHTML;
});
| 归档时间: | 
 | 
| 查看次数: | 20647 次 | 
| 最近记录: |