不知道怎么回事,以前用setTimeout没出过问题,这次怎么用都错
代码:
window.onload=function(){
function x(){
alert("s");
}
setTimeout("x()",1000);
}
把window.onload=function(){}去掉就能用了,但是这样写惯了,而且去掉之后,像document.getElementById这样的方法会找不到对象,郁闷。。。
在网上找到个不错的方法,应用匿名函数
window.onload=function(){
function x(){
alert("s");
}
setTimeout(function(){x();},1000);
} ......
禁止选择
unselectable="on"(off): IE/Opera
style="-moz-user-select:none": FireFox(JS:element.style.MozUserSelect = "none";)
style="-khtml-user-select:none": Safari(JS:element.style.KhtmlUserSelect)
onselectstart="return false": IE
取消选择
if(document.selection && document.selection.clear) document.selection.clear(); // IE
else if(window.getSelection && window.getSelection().removeAllRanges) window.getSelection().removeAllRanges(); // FireFox/Opera/Safari
当前焦点是哪个控件
document.activeElement // IE, FF3.0+
获取样式的实际属性值
IE: 对象.currentStyle.需要访问的属性
W3C: window.getComputedStyle("对象",null).需要访问的属性(第2个参数为伪元素,如:hover,:first-letter,:before等,是必须的)
function getStyle(element, style){
&nbs ......
String.prototype.changeQuery = function(name,value)
{
var reg = new RegExp("(^|)"+ name +"=([^&]*)(|$)");
var tmp = name + "=" + value;
if(this.match(reg) != null)
{
return this.replace(eval(reg),tmp);
}
else
{
if(this.match("[\?]"))
{
return this + "&" + tmp;
}
else
{
return this + "?" + tmp;
}
}
}
var href = 'http://dlib.apabi.com/?Token=44AB&cult=CN&orgid=pku';
alert("old url is -- "+href);
href = href.changeQuery("cult","US");
alert("new url is -- "+href); ......
Script是告诉html脚本程序从此处执行,标准输出语句为document.write()。
当页面载入的时候,会执行body部分的javascript;当页面调用的时候,会执行head部分的javascript;即body部分为页面部分,而head为在用户触发的时候调用。
例:<html>
<head>
<script type=”text/javascript”>
Function message()
{
Alert(“这个提示框通过执行onload事件调用的”)
}
</script>
</head>
<body onload=”message()”>
</body>
</html>
当页面载入时,先执行body部分,然后再调用message函数,alert为
例:<html>
<head>
<input type="text" id="123"> //定义text框,标识号id为123
<input type="button" value="Click me!" onclick="alerting();"/> //定义按钮名字为Click me !点击按钮调用alerting()
<Script Language="JavaScript"> //脚本
function alerting(){ & ......
在JavaScript里,字面量包括:字符串字面量,数组字面量,函数字面量和对象字面量。
1.字符串字面量
var str = "Hello World!";
“Hello World!”就是字符串字面量。
2.数组字面量
var newArray = ["Mon","Tue","Wed"];
["Mon","Tue","Wed"]就是数组字面量。
3.函数字面量
var func = function (x,y){
return x*y;
}
等号右端就是函数字面量。函数字面量使得函数可以作为另一个函数的参数进行传递。
& ......
Chrome 拥有更快速的JavaScript;
编写如下小程序:
<html>
<script language = "javascript">
var sum = 0;
var start = new Date;
for(var i = 0; i < 1000001; i++){
sum+=i;
}
var stop = new Date;
document.write("从1到1000000的累加结果:" + sum + ";" + "<br/>" + "<br/>");
document.write("耗时" + (stop.getTime() - start.getTime()) + "毫秒");
</script>
</html>
分别在chrome与IE 8.0中运行截图如下:
下面是IE 8.0,结果有点惨。。
发现如下问题,求解。。。
编写如下代码:
<html>
<script language = "javascript">
var name = 10001;
name = name + 8;
document.write("注意两者的不同!" + name + "666");
</script>
</html>
分别在chrome与IE 8.0中运行截图如下:
在IE下运行加法,而在chrome下直接将8加在字符串后; ......