prototype.js真是好东西,代码不多但作者的设计思路相当漂亮,简化了不少工作,至少可以减少30%的js代码,用facade模式把一些浏览器之间不兼容的问题隐藏掉,简化了不少工作;
$() 相当于documnet.getElementById()
$A()用来把一个传进来的参数转化为一个Array,
下面说一下今天最后要说的最后一个函数:
$R()
$() 相当于documnet.getElementById()
js 代码
- <script src=<span class="string">"prototype-1.4.0.js"></script>
- <script>
- function test1()
- {
- var d = $('myDiv');
- alert(d.innerHTML);
- }
- function test2()
- {
- var divs = $('myDiv','myOtherDiv');
- for(i=0; i<divs.length; i++) < span="">
- {
- alert(divs[i].innerHTML);
- }
- }
- </script>
$F()用来取得输入框中的值,注意只要标签有value这个属性$F()就是取得它的值,不过是用在取输入框中的值的情况最多了
js 代码
- <script>
- function test3()
- {
- alert( $F('userName') );
- }
- </script>
$A()用来把一个传进来的参数转化为一个Array,
js 代码
- <script>
- function showOptions(){
- var someNodeList = $('lstEmployees').getElementsByTagName('option');
- var nodes = $A(someNodeList);
- nodes.each(function(node){
- alert(node.nodeName + ': ' + node.innerHTML);
- });
- }
- </script>
$H()方法把对象转化成可枚举的貌似联合数组Hash对象。
js 代码
- <script>
- function testHash()
- {
- //let's create the object创建对象
- var a = {
- first: 10,
- second: 20,
- third: 30
- };
- //now transform it into a hash转为Hash
- var h = $H(a);
- alert(h.toQueryString()); //转为字符串,哈哈哈可以使用Ajax方式把这个对象的属性传到后台了displays: first=10&second=20&third=30
- }
- </script>
js 代码
function demoDollar_R(){ var range = $R(10, 20, false); range.each(function(value, index){ alert(value); }); } </script>
<script>
<script>
function testHash()
{
//let's create the object
var a = {
first: 10,
second: 20,
third: 30
};
//now transform it into a hash
var h = $H(a);
alert(h.toQueryString()); //displays: first=10&second=20&third=30
}
</script>