<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script type="text/javascript" src="jquery-1.7.2.min.js"></script>
<script type="text/javascript">
window.onload=function(){addele();pushspan();}
function addele(){
for(var i=0;i<1000;i++) {
var span=document.createElement("span");
span.setAttribute("id","span"+i);
document.body.appendChild(span);
}
}
function pushspan(){
var array=new Array();
var start=new Date();
var $=document.getElementById;//这样写貌似不怎么对啊!它的本意是将getElementById方法的内存地址赋值给变量$(此时$相当于是一个指针变量),在js中是否存在有指针变量?
for(var i=0;i<1000;i++){
var span=($)("#span"+i);
array.push(span);//push方法可以向数组末尾添加一个或者是多个元素,并返回新的的长度。
}
var $=jQuery;
var end=new Date();
alert("所花费的时间是:"+(end-start)+"毫秒");
}
</script>
</head><body>
</body>
</html>最近在学习jquery的时候,发现一本书上出现了上述代码,其中,我对用红色部分显示的代码,并不是很理解,其中用注释表明了我的大概思路。我不知道这样想对不对?但是在运行的时候是会报错的。说红色部分调用的对象无效!这是怎么回事?
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script type="text/javascript" src="jquery-1.7.2.min.js"></script>
<script type="text/javascript">
window.onload=function(){addele();pushspan();}
function addele(){
for(var i=0;i<1000;i++) {
var span=document.createElement("span");
span.setAttribute("id","span"+i);
document.body.appendChild(span);
}
}
function pushspan(){
var array=new Array();
var start=new Date();
var $=document.getElementById;//这样写貌似不怎么对啊!它的本意是将getElementById方法的内存地址赋值给变量$(此时$相当于是一个指针变量),在js中是否存在有指针变量?
for(var i=0;i<1000;i++){
var span=($)("#span"+i);
array.push(span);//push方法可以向数组末尾添加一个或者是多个元素,并返回新的的长度。
}
var $=jQuery;
var end=new Date();
alert("所花费的时间是:"+(end-start)+"毫秒");
}
</script>
</head><body>
</body>
</html>最近在学习jquery的时候,发现一本书上出现了上述代码,其中,我对用红色部分显示的代码,并不是很理解,其中用注释表明了我的大概思路。我不知道这样想对不对?但是在运行的时候是会报错的。说红色部分调用的对象无效!这是怎么回事?
解决方案 »
- 想问问这个JS做的效果是2D还是3D,希望得到比较权威的解释。
- <script src="xxx" tppabs="http://www.xxx.com/xxx/xxx"></script>里面的tppabs=是什么意思??
- document.write语句,为什么有时候会把之前的内容清除掉呢?
- 关于自动关闭的alert() 的问题
- 有没有办法在JS中写ASP脚本
- 请大家帮帮忙!!!
- 请问有javaSCRIP,对WORD操作的例子嘛,,,WORD里面有表格的
- 定义inserBefore后出现Cannot read property 'parentNode' of null错误
- 为什么这里的jquery方法没有生效呢?
- 这个JS谁帮我附加个条件
- 用非数字做数组下标时,.length和.forEach的结果好像不大对?
- 【我快疯了】关于正则match
var $=function(id){ return document.getElementById(id)};
window.onload=function(){
var a=$("test");
alert(a.innerHTML);
}
var x = { a: 123 };
alert(x.a)//123
function oupdate(o) { o.a = '321'; }
oupdate(x);
alert(x.a)//321
var i = 123;
alert(i)//123
function iupdate(i) { i = 321; }
alert(i)//123
js里面对象都是引用类型(也可以说指针,反正一个意思就是指向一个内存)
js的函数也是对象,所以这样写应该是可以的,
如果不行的话,不是这种写法的问题,可能是这个函数比较特殊(被保护?)而已,换个自己写的函数绝对不会有问题
//alert("sd");
var $ = document.getElementById;
var rc = $("ReasonCode");
alert(rc.value);
}
我的就可以啊
var span=($)("#span"+i);
array.push(span);//push方法可以向数组末尾添加一个或者是多个元素,并返回新的的长度。
}
假设可以这样:
var a = document.getElementById;
那么
a.alert = function() {
...
}
当a消失的时候,document.getElementById的改变还是被保留了下来。
你可以这样操作
document.getElementById.alert();
这样,js的内部函数被改变了,岂不乱套了