您正在查看 "Js" 分类下的文章
2008-05-30 15:39
代码:
function FSMenu(myName,nested,cssProp,cssVis,cssHid)
{
this.a=myName;
};
FSMenu.prototype.activateMenu=function ()
{
with(this)
{
a="eee"
b="vvv"
}
alert(window.b)//'vvv'
};
var listMenu = new FSMenu('listMenu', true, 'display', 'block', 'none');
listMenu.activateMenu()
默认的都是WITH(WINDOW),假若FSMenu的构造函数里面有this.b=""
则会报 |
2008-05-29 10:51
var s='global'; //定义一个全局变量
function demo1(){
eval('var s="local"');
}
demo1();
alert(s); //->global
很好理解,上面的demo1函数等价于:function demo1(){var s='local';},其中定义了一个局部变量s。
所以最后的输出是global并不是什么奇怪的事情,毕竟大家都能很清楚的区分局部变量和全局变量。
仔细体会一下,可以发现eval函数的特点,它总是在调用它的上下文变量空间(也称为:包,closure)内执行,无论是变量定义还是函数定义都是如此,所以如下的代码会产生函数未定 |
2008-05-26 09:50
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<meta http-equiv="Content-type" content="text/html; charset=iso-8859-1" />
<title>H1 fading effect demo</title>
</head>
<body>
<sc |
2008-05-23 17:16
// Date() 的构造器设置以毫秒为单位
// .getTime() 方法返回时间,单位为毫秒
// 所以要设置15分钟到期,要用60000毫秒乘15分钟
var expiration = new Date((new Date()).getTime() + 15 * 60000);
document.cookie = "username=" + escape(form.username.value)+ "; expires ="
+ expiration.toGMTString() + "; path=" + "/" + "; _
domain=" + "mydomain.com" + "; secure";
读取cookies值有点象个小把戏,因为你一次就得 |
2008-05-22 14:46
由于最近做的东西都是纯Javascript脚本的到网上下一些现成产品的代码,发现都有加密或混淆,因为很多加密其实是用Packer2的压缩实现的,就先讨论一下压缩吧,毕竟压缩后的代码至少可以让下载的速度快些吧。
目前JavaScript压缩的基本方法如下:
1、最常用的方法,将所有的注释去掉,然后将所有的回车去掉,最后把多余的空格也去掉。
2、高 |
2008-05-19 14:20
addRule IE
insertRule W3C标准
function addStyleRule(styleSheet, selector, properties, index)
{
if (typeof styleSheet.addRule != "undefined")
{
styleSheet.addRule(selector, properties, index);
}
else if (typeof styleSheet.insertRule != "undefined")
{
if (typeof index == "undefined")
{
|
2008-05-19 09:59
2008-05-16 14:07
版本1:
function addEvent( node, type, listener ) {
if (node.addEventListener) {
node.addEventListener( type, listener, false );
return true;
} else if(node.attachEvent) {
node['e'+type+listener] = listener;
|
2008-05-12 14:15
学习<JAVASCRIPT精粹>里的一个例子......
函数分析:
function getEventTarget(event)
{
var targetElement = null;
if (typeof event.target != "undefined")
{
targetElement = event.target;
}
else
{
targetElement = event.srcElement;
}
|
2008-04-29 14:03
- 在ie中,事件对象是作为一个全局变量来保存和维护的。 所有的浏览器事件,不管是用户触发
的,还是其他事件, 都会更新window.event 对象。 所以在代码中,只要轻松调用 window.event
就可以轻松获取 事件对象, 再 event.srcElement 就可以取得触发事件的元素进行进一步处理
- 在ff中, 事件对象却不是全局对象,一般情况下,是现场发生,现场使用,ff把事件对象自动传
递给对应的事件处理函数。 在代码中,函数的第一个参数就是ff下 |
|
|