//定义要打开的对话框页面的地址 一般用action跳转要写明action的地址,如果需要参数,则在后面拼接
var urlDialog = "grpBlackWhiteManageAction.do?act=choiceMessageModel&GrpBWhiteListLevel=0";
//定义要弹出的对话框的模式,dialogWidth宽,dialogHeight高 等等
var style = "dialogWidth=600px;dialogHeight=600px;status=yes;edge=sunken;help=no";
//定义一个变量来接受对话框的返回数据
var rv = window.showModalDialog(urlDialog,"",style);
//如果没有返回数据的话,就直接写
window.showModalDialog(urlDialog,"",style); 、
对话框页面的关闭按钮触发事件可以这样写
<input type="button" name="colse" value="关闭" onclick="javaScript:window.close();"> ......
闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现。
下面就是我的学习笔记,对于Javascript初学者应该是很有用的。
一、变量的作用域
要理解闭包,首先必须理解Javascript特殊的变量作用域。
变量的作用域无非就是两种:全局变量和局部变量。
Javascript语言的特殊之处,就在于函数内部可以直接读取全局变量。
var n=999;
function f1(){
alert(n);
}
f1(); // 999
另一方面,在函数外部自然无法读取函数内的局部变量。
function f1(){
var n=999;
}
alert(n); // error
这里有一个地方需要注意,函数内部声明变量的时候,一定要使用var命令。如果不用的话,你实际上声明了一个全局变量!
function f1(){
n=999;
}
f1();
alert(n); // 999
二、如何从外部读取局部变量?
出于种种原因,我们有时候需要得到函数内的局部变量。但是,前面已经说过了,正常情况下,这是办不到的,只有通过变通方法才能实现。
那就是在函数的内部,再定义一个函数。
function f1(){
n=999;
function f2(){
alert(n); / ......
很久就想总结一下关于javascript性能优化方面的一些东西,平时也有注意收集这方面的资料。把del.icio.us里的收藏的东西翻出来看一遍,才惊奇地发现,这些所谓的优化方法大多出自《javascript高级程序设计》一书,当然也有个别
不一样的。总之这本书上关于javascript性能优化的内容足足用了近20页来进行阐述,所以今天我也照本宣科地来介绍一下,同时收录其他方法。
javascript的性能优化应分为两部分:下载时间和执行时间。
下载时间
javascript作为一种解释性语言不同于其他编程语言。在诸如java,c,c++的语言中,开发人员根本无需考虑变量名的长度以及长篇大论的注释,因为这些在编译时都会被删除。
但是web浏览器下载的是javascript的源代码,你编写的javascript程序文件会原模原样地下载到客户端。而这些长变量名和注释
就会影响脚本的下载时间。单个TCP-IP包中能放入的字节数是1160,所以最好将每个javascript文件的大小控制在1160字节以内以获取最
优的下载时间。
javascript文件中的任何字节,不管是空格,还是换行都会影响javascript文件的下载时间,所以在部署任何javascript文件之前,都应该尽可能地优化脚本文件的体积。以下是一些常用的优化javascript文件 ......
1.Text 单行单列输入元素
功能:对Text标识中的元素实施有效的控制
基本属性:
Name:设定提交信息时的信息名称。对应于HTML文档中的Name。
Value:用以设定出现在窗口中对应HTML文档中Value的信息。
defaultvalue:包括Text元素的默认值
基本方法:
blur():将当前焦点移到后台。
select():加亮文字。
主要事件:
&nb ......
最短的拖动代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<script language="JavaScript" type="text/javascript">
var x,y
var drag_=false
var D=new Function('obj','return document.getElementById(obj);')
var IE=new Function('','if(navigator.appName.indexOf("Explorer")>=0)return 1;if(navigator.appName.indexOf("Netscape")>=0)return 2')
function Move_obj(obj){//1
D(obj).onmousedown=function(e){drag_=true//4
with(this){style.position="absolute";temp1=offsetL ......
1. 标准的方法
<mce:script type="text/javascript"><!--
function openWin(src, width, height, showScroll){
window.showModalDialog (src,"","location:No;status:No;help:No;dialogWidth:"+width+";dialogHeight:"+height+";scroll:"+showScroll+";");
}
// --></mce:script>
例:<span style="CURSOR: pointer" onclick="openWin
(’http://www.deepteach.com’, ’500px’, ’400px’, ’no’)">点击</span>
2. 要注意的是,Firefox并不支持该功能,它支持的语法是
window.open
(’openwin.html’,'newWin’, 'modal=yes, width=200,height=200,resizable=no, scrollbars=no’ );
3. 如何自动判断浏览器
<input type="button" value="打开对话框" onclick="showDialog('#')"/>
<SCRIPT LANGUAGE="JavaScript">
<!--
function showDialog(url)
{
if( document.all ) //IE
{
feature="dialogWidth:300px;dialogHeight:200px;stat ......