javascript

阅读 / 问答 / 标签

javascript中丨怎么打?

<html><body><script type="text/javascript">var n=100;document.write("无论是html的语法还是javascript的语法,|都可以直接输入(按Shift+\),不需要转义。<br />");document.write("下面是用document.write方法输出的100个|:<br />");for(var i=0;i<n;i++){document.write("|");}</script></body></html>

js和javascript的区别

这个没啥区别哈,都是同一个也是js就是javascript英文缩写,是前台脚本语言

js和javascript的区别

js是javascript的简称

JAVASCRIPT和Jscript的区别

netscape开发了在Navigator中使用的LiveScript语言,后改名为JavaScript Microsoft发行jscript用于internet explorer. 最初的jscript和javascript差异过大,web程序员不得不痛苦的为两种浏览器编写两种脚本。于是诞生了ECMAScript,是一种国际标准化的javascript版本。现在的主流浏览器都支持这种版本。 我们写程序的时候最好写<script language=javascript>而不是<script language=jscript>因为javascript是一个通用的名称,所有浏览器都认识,而jscript只有IE认识。 其他语言细节上的区别,不是一两下能说完的。编程时最好遵循ECMAscript标准。这样可以保证兼容性。 顺便说一下,javascript原来叫Livescript,后来Sun的java风头正盛的时候netscape就把名字改成javascript。

JScript 和 JavaScript 的区别是什么

JScript是由微软公司开发的活动脚本语言,是微软对ECMAScript规范的实现。JScript最初是随Internet Explorer 3.0于1996年8月发布。在网络程序员谈论Internet Explorer中的JavaScript的时候,他们实际上是指JScript。所以说,一样的

Js、javascript、JScript、JQueny区别?

ls的解释没问题,更多详细资料请在网络上寻找

我想问JSP JavaScript JScript js之间的区别 请简单回答,别照搬资料,谢谢大家

javascript,JScript,js都是同一概念,为客户端脚本,即由浏览器端解释,执行的。只要有一个浏览器,就可以运行javascript了。程序代码一般包含在<script></script>内。JSP即java server page.是在服务器端使用的,类似于asp,asp.net,只不过asp和asp.net使用的编程语言分别为:vbscript,c#,而JSP采用的编程语言为java,程序块包含在<%%>内。要运行jsp则需搭建web服务器,由服务器执行。

JAVASCRIPT和Jscript的区别

netscape开发了在Navigator中使用的LiveScript语言,后改名为JavaScript Microsoft发行jscript用于internet explorer. 最初的jscript和javascript差异过大,web程序员不得不痛苦的为两种浏览器编写两种脚本。于是诞生了ECMAScript,是一种国际标准化的javascript版本。现在的主流浏览器都支持这种版本。 我们写程序的时候最好写<script language=javascript>而不是<script language=jscript>因为javascript是一个通用的名称,所有浏览器都认识,而jscript只有IE认识。 其他语言细节上的区别,不是一两下能说完的。编程时最好遵循ECMAscript标准。这样可以保证兼容性。 顺便说一下,javascript原来叫Livescript,后来Sun的java风头正盛的时候netscape就把名字改成javascript。

jscript和javaScript是一样的吗?

95%以上一样说白了jscript就是山寨javaScript

javascript和jscript的区别

javascript的简写就是js 有的也说成是 jscript ;

javascript,jscript,es,有什么区别,哪种更好?

jscript 相当于微软版的javascript,主要作为ASP的默认脚本语言,运行于后台或者说服务器端(而我们通常意义上的javascript则运行于前端或者说浏览器端、客户端)。es(即ECMAScript)则是javascript的行业标准。它只是一种标准,并不是实际的程序设计语言,具体的实现是由各种客户代理程序(通常就是浏览器内核)去完成的。所以这三者在类别和使用场景上并没有什么交集,无法进行比较,更谈不上谁好谁坏。

js连接数据库如何操作数据库中的数据_javascript技巧

//连接SQL 代码如下: var conn = new ActiveXObject("ADODB.Connection"); conn.Open("Provider=SQLOLEDB.1; Data Source=tgf; User ID=sa; " +"Password=sasa; Initial Catalog=MyBulletin"); var rs = new ActiveXObject("ADODB.Recordset"); var sql="select id,name from Category"; rs.open(sql, conn); alert(rs(0));//取出第一个来 rs.close(); rs = null; conn.close(); conn = null; //连接ACCESS 代码如下: function conn(){ var db_bbs db_bbs="dd.mdb"//定义数据库 var conn = new ActiveXObject("ADODB.Connection"); conn.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+db_bbs+""); var rs = new ActiveXObject("ADODB.Recordset"); var sql="select name from authors"; //数据库中有authors表,name字段 rs.open(sql,conn); alert(rs(0))//取出第一个来 conn.close(); conn = null; }

JavaScript中的Array对象如何使用

JavaScript的array对象也是JavaScript的内置函数之一,Array对象是用于处理数组的,使用Array对象时,我们需要先用new来创建一个array对象。我们在如何使用JavaScript中的string对象这篇文章中已经介绍了如何创建一个内置函数,所以接下来我们就直接用new来创建一个Array对象var family= new Array();然后我们来看具体的示例代码如下添加"Tom", "Jerry", "Soucy"并使用console.log调用调试。<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>JavaScript</title> </head> <body> <script> var family= new Array("Tom", "Jerry", "Soucy"); console.log(family); </script> </body></html>运行效果如下接下来我们来看一下Array对象的属性和方法属性1. length(获取数组长度)代码如下<script> var family= new Array("Tom", "Jerry", "Soucy"); console.log(family.length); </script>运行效果如下在family数组中有Tom, Jerry, Soucy三个元素,因此显示为3。关于length和属性在排列的length属性中代替要素数,如果代入后的要素数比代入前的要素数小的话,要素也被删除。这次,“Taro”,“Jiro”,“Saburo”的排列的length属性将2代入““Taro”,“Jiro”。那么请说明各代码。初始值如下。通过将元素数分配给数组的length属性,如果赋值后的元素数小于替换前的元素数,则该元素将被删除。此时,["Tom", "Jerry", "Soucy"]通过在所述数组的长度属性设为2,则数组就变为["Tom", "Jerry"]。我们来说明一下初始值如下。var family = ["Tom", "Jerry", "Soucy"];下面将元素为3的family数组的长度设置为2family.length = 2;这时,数组family的元素会删除一个,显示数组的代码如下。 console.log(family)此时数组的值是["Tom", "Jerry"]。这是此时显示数组元素下标的代码。console.log(Object.keys(family));显示结果是0 , 1。显示当前数组长度的代码如下console.log(family.length);显示结果为2我们来尝试获取第一个元素我们编写代码如下console.log(family.1);但是,因为语法不同,所以会发生错误。会显示如下的结果这是显示当前第二个元素(下标为1)的正确语法代码。console.log(family[1]);运行结果如下这是显示下标值为1的元素的代码,它是通过从数组family的length属性递减1获得的数字。console.log(family[family.length - 1]);运行结果和上述一样Array对象的方法方法1. slice()(获取数组元素)在slice()方法中,可以通过指定下标来搜索指定的元素。(下标是对数组元素进行编号的,从0开始一直到n......)检索元素时,必须在()中指定起始位置的下标和结束位置的下标。如果未指定特定的范围,则会从第一个元素开始检索的最后一个元素。我们来看具体的示例 <script> var family= new Array("Tom", "Jerry", "Soucy"); console.log(family.slice(0,2)); </script>运行结果如下slice(0,2)指的是从下标为0的元素开始到下标为2的元素前,所以运行结果是"Tom", "Jerry"。还有需要知道的是:如果slice(0),则显示"Tom", "Jerry", "Soucy"如果slice(0,1),则显示"Tom"如果slice(1),则显示"Jerry", "Soucy"如果slice(1,2),则显示"Jerry"如果slice(2),则显示"Soucy"方法2. reverse()(翻转元素顺序)代码如下<script> var family= new Array("Tom", "Jerry", "Soucy"); console.log(family.reverse()); </script>运行结果如下:顺序翻转了过来方法3. push()(在末尾添加新元素)在push()中,您可以在数组末尾添加一个新元素,并在添加后获取元素数。代码如下<script> var family= new Array("Tom", "Jerry", "Soucy"); console.log(family.push("Marry", "Cindy"));</script>运行效果如下元素个数从3增加到了5,如果要显示增加的元素,可以再输入以下代码console.log(family)运行结果如下

javascript问题,请帮我看看下面的语句有什么错误?

这是一个json对象,应该把所有的属性名都加上双引号,例如age,type,num等PHP Web程序设计与Ajax技术

javaScript 中怎么延迟执行一个方法?

setTimeout() 只执行 code 一次。如果要多次调用,请使用 setInterval() 或者让 code 自身再次调用 setTimeout()。<html> <head> <script type="text/javascript"> function timedMsg(){ var t=setTimeout("alert("5 seconds!")",5000) }</script> </head> <body> <form> <input type="button" value="Display timed alertbox!"onClick="timedMsg()"> </form><p>Click on the button above. An alert box will bedisplayed after 5 seconds.</p> </body> </html>

JavaScript如何使用setTimeout()设置定时器

在JavaScript中,通过给setTimeout()方法设置需要调用的函数或要执行的代码串参数,和延迟的时间参数;在调用setTimeout()方法就可以设置一个简单的定时器。在JS中,提供了一些原生方法来实现在设定的时间间隔之后去执行某一段代码;setTimeout()方法设置的是一次性定时器,是仅在指定的延迟时间之后触发一次。下面我们就来看看setTimeout()方法如何设置定时器。setTimeout()方法setTimeout():设置一次性定时器,在指定的毫秒数后调用函数或计算表达式;会在载入时延迟指定时间后,去执行一次表达式,仅执行一次。【相关视频教程推荐:JavaScript教程】语法:setInterval(code,millisec,lang);参数说明:code:必需的参数,表示需要调用的函数或要执行的代码串。 millisec:必须的参数,表示周期性执行或调用 “code参数”前的时间间隔,以毫秒为单位计时(1s=1000ms)。lang 可选的参数。setTimeout()方法的示例:html代码:<p>点击按钮,在等待 3 秒后弹出 "Hello"。</p><button onclick="myFunction()">点我</button>js代码:function myFunction(){ setTimeout(function(){alert("Hello")},3000);}效果图:setTimeout()设置无限循环的定时器使用setTimeout()方法也可以实现无限循环的定时器,我们需要编写一个函数来调用其自身。此时setTimeout()方法会无限循环,如果想要停止定时器,就需要使用clearTimeout()方法。clearTimeout()方法clearTimeout():用来取消setTimeout()设置的定时器,在设置setTimeout()进行无限循环时使用。语法:clearTimeout(id_of_setTimeout);参数说明:id_of_setTimeout:表示由 setTimeout() 返回的 ID 值。注:该值标识要取消的延迟调用的函数或延迟执行的代码串;setTimeout()方法和clearTimeout()方法的联合示例<!DOCTYPE HTML><html><head><script type="text/javascript"> var num=0,i; function timedCount(){ document.getElementById("txt").value=num; num=num+1; i=setTimeout(timedCount,1000); } setTimeout(timedCount,1000); function stopCount(){ clearTimeout(i); }</script></head><body> <form> <input type="text" id="txt"> <input type="button" value="Stop" onClick="stopCount()"> </form></body></html>效果图:可以看出,一开始setTimeout()设置的定时器在无限循环,使得input框中的数字在不断的增大,当按下Stop按钮后,就会调用clearTimeout()方法,停止setTimeout()定时器,数字就停止增加,保持为数字11。总结:

javascript 定时刷新 setTimeout 内存如何释放?

猜想因为你把//stopGoal();给注释掉了,另外感觉封装的方法不太妥当,可考虑将一次重置的参数放到一个function里,希望对你有帮助!

javascript的函数setTimeout("hello",2000) 可以在点击某个按钮后停止这个超时函数吗

楼上很对。。。。。

JavaScript如何使用setTimeout来实现轮循动画的实例详解

本文实例为大家分享了setTimeout实现轮循动画的具体代码,供大家参考,具体内容如下代码如下:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title></head><body> <p id="box"></p> <script> var oBox = document.getElementById("box"); var maxLeft = utils.win("clientWidth")-oBox.offsetWidth; var step = 5; var timer = null; //使用递归思想完成setTimeout的轮循动画:每一次在执行动画之前把上一次设置没用的定时器清除掉,节约我们的内存空间 function move(){ window.clearTimeout(timer); var curLeft = utils.css(oBox,"left"); if(curLeft+step >= maxLeft){//边界判断 utils.css(oBox,"left",maxLeft); return; } curLeft+=step; utils.css(oBox,"left",curLeft); timer = window.setTimeout(move,10) } move(); </script></body></html>一直以为动画效果是用setInterval来执行的。也比较好理解,一直执行下去,直到条件再次出现时清除setInterval。这几天看了用setTimeout来做动画的例子,起初我是不理解的。动画和延迟执行有毛关系(其实是有关系的,后面会讲到。)代码是这样子的:for ( i=0; i<200; i++){ setTimeout ( function(){ var left = el.style.left ? el.style.left : 0; left = parseInt( left ) +1; el.style.left = left+ "px"; } , i );}代码就是以上样子的啦。我当时所不理解的是,为什么每次都要延迟的时间递增?为什么刚好到200px就停止执行了,i明明是时间,为什么和距离的值一样?首先回答第一个问题,for循环其实是动画的关键,仅仅执行setInterval 只会使物体位移一次。可以先分析代码:当i为0的时候,物体移动1px,当 i 为1的时候,left为2px, 延迟了1毫秒。。当i为99的时候,left为100px,延迟99毫秒执行。。当i为199的时候,left为200px,延迟199毫秒执行。。延迟的时间与物体的移动呈递增状态。所以,从单方面看,延迟和动画没有必然关系。但是从连续的角度(for循环起了作用),根据我们的视觉暂留,就形成了动画,用张图来表示:循环起来,就形成了动画效果。第二个问题:当动画结束时,恰巧距离是200,这和i有什么关系呢?其实没有直接关系。只是当i自增1的时候,left也恰好是自增i,如果将left的值每次都加3,那么看到的就是不一样的结果了。(最终应该是600,还是有关系的,因为循环了200次)。

javascript里setTimeout(send(), 3000); 与 setTimeout(send,3000)的区别

send是函数指针 send()是函数返回值 已经执行过了一般返回undefined 所以再setTimeout毫无意义

javascript.怎么退出定时器setTimeout。

timedcount设置定时器t,stopcount退出定时器t。直接调用就可以了function timedCount() { t=setTimeout("timedCount()",1000) }function stopCount() { clearTimeout(t) }

javaScript中的setTimeout返回值有什么用?

返回一个id,可以通过调用clearTimeout(id)来终止setTimeout。

javascript中的setTimeout怎么用? 我想定时刷新页面!!!

setInterval() 用这个 setInterval("clock()",50)

轻量级JavaScript模版引擎mustache.js如何使用代码详解

我们将为大家详解Mustache.js轻量级JavaScript模版引擎使用方法。简单示例可以很明显的看出Mustache模板的语法,只需要使用{{和}}包含起来就可以了,里面放上对象的名称。通过本示例也可以看出,如果指定的属性为函数的时候,不会输出函数里面的内容,而是先执行函数,然后将返回的结果显示出来。不转义HTML标签通过这个示例可以看出Mustache默认是会将值里面的html标记进行转义的,但是有时候我们并不需要。所以这里我们可以使用{{{和}}}包含起来,或者是{{和}}包含,那么Mustache就不会转义里面的html标记。绑定子属性的值相信看到第一个示例的时候,就会有人想到能不能绑定子属性,如果你努力看下去了。那么祝贺你,现在就是解决你的需求的方式,仅仅只需要通过.来使用子属性即可。条件式选择是否渲染指定部分问题总是不断,如果我们还需要能够根据我们给的值,决定是否渲染某个部分,那么现在就可以解决这个问题,当然还要提示的就是不仅仅是false会导致不渲染指定部分。null,空数组,0,空字符串一样有效。语法上面比较简单,就是使用{{#key}} ... {{/key}}来控制中间的内容。循环输出仅仅学会上面的方式,大部分地方你都解决了,但是还是会出现麻烦的地方,就是循环输出,如果你一个一个写,相信会很烦躁,当然Mustache不会让我们失望,它也给出了如何循环输出的方式,这里是将一个由对象组成的数组输出,如果我们输出的是数组,就需要使用{{.}}来替代{{name}}。循环输出指定函数处理后返回的值循环输出是有了,但是我们还想后期进行加工。那么这个完全符合你的需要,因为Mustache会将数组中的值传递给你的函数,输出你函数返回的值。这里我们可以看到最外层是数组,只要在里面使用函数那么外层的数组就会作为这个函数的参数传递进去。自定义函数上面我们都是用的变量作为节,那么我们现在用函数作为节,会有什么效果呢。它会调用我们函数返回的函数,将节中间的原始字符串作为第一个参数,默认的解释器作为第二个参数,那么我们就可以自行加工。反义节上面我们也用节,但是仅仅只能选择是否输出某个部分。所以这里我们弥补一下。如果我们使用了{{^和}}来定义节的话,那么这个部分只会在里面的值为空,null,空数组,空字符串的时候才会显示。那么我们就可以实现了if else的效果了。部分模板Mustache虽然节约了很多时间,但是我们定义了很多模板,但是彼此之间无法互相嵌套使用,也会造成繁琐。所以这里我们还要介绍如何定义部分模板,用来在其他模板里面使用,这里使用其他模板的方式仅仅是{{>templetename}}。最大的不同就是Mustache.render方法有了第三个参数。预编译模板模板既然有好处,也有坏处。就是编译模板需要时间,所以在我们已知会使用某个模板的前提下,我们可以预先编译好这个模板,以便后面的使用。

javaScript矢量图表库-gRaphael几行代码实现精美的条形图/饼图/点图/曲线图_javascript技巧

gRaphael 是一个致力于帮助开发人员在网页中绘制各种精美图表的 Javascript 库,基于强大的 Raphael 矢量图形库。你只需要编写几行简单的代码就能创建出精美的条形图、饼图、点图和曲线图。gRaphael 使用 SVG W3C 推荐标准和 VML 作为创建图形的基础,是跨浏览器的矢量图形库,目前支持的浏览器包括: Firefox 3.0+,Safari 3.0+,Chrome 5.0+,Opera 9.5+ 以及 Internet Explorer 6.0+。使用方法:在页面中引入 raphael.js,g.raphael.js 文件,并根据需要引入 g.line.js(曲线图),g.bar.js(条形图),g.dot.js(点图)和 g.pie.js(饼图)文件,然后根据提供的方法即可创建出你想要的精美图表,下面是两个简单示例。创建静态饼图 只需要两行代码即可,示例代码: 代码如下:// 在坐标(10,50)创建 600 × 450 的画布 var r = Raphael(10, 50, 600, 450); // 创建中心坐标为(320, 200)的饼图,半径为150,数据为 [55, 20, 13, 32, 5, 1, 2, 10]的饼图 r.piechart(320, 240, 150, [55, 20, 13, 32, 5, 1, 2, 10]); 效果演示及完整源码下载:源码下载创建交互饼图 结合 hover 和 click 事件以及动画方法,你就可以创建精美的交互式饼图,示例代码: 代码如下:// 在坐标(10,50)创建 640 × 480 的画布 var r = Raphael(10, 50, 640, 480); // 创建中心坐标为(320, 240)的饼图,半径为100,数据为[55, 20, 13, 32, 5, 1, 2, 10]的饼图 pie = r.piechart(320, 240, 100, [55, 20, 13, 32, 5, 1, 2, 10], { legend: ["%%.%% - Enterprise Users", "IE Users"], legendpos: "west", href: ["http://raphaeljs.com", "http://g.raphaeljs.com"] }); // 在坐标(320, 100)绘制文字 r.text(320, 100, "Interactive Pie Chart").attr({ font: "20px sans-serif" }); // 给饼图添加 hover 事件 pie.hover(function() { this.sector.stop(); this.sector.scale(1.1, 1.1, this.cx, this.cy); if(this.label) { this.label[0].stop(); this.label[0].attr({ r: 7.5 }); this.label[1].attr({ "font-weight": 800 }); } }, function() { this.sector.animate({ transform: "s1 1 " + this.cx + " " + this.cy }, 500, "bounce"); // 添加动画效果 if(this.label) { this.label[0].animate({ r: 5 }, 500, "bounce"); this.label[1].attr({ "font-weight": 400 }); } }); 效果演示及完整源码下载:源码下载gRaphael 官方网站地址:http://g.raphaeljs.com/gRaphael 英文参考文档:http://g.raphaeljs.com/reference.html Raphael 官方网站地址:http://raphaeljs.comRaphael 英文参考文档:http://raphaeljs.com/reference.htmlRaphael 中文帮助文档:http://julying.com/lab/raphael-js/docs/Raphael 新手入门教程:An Introduction to the Raphael JS Library

如何用Javascript判断输入是否是日期格式

用正则。。。

javascript 怎么判断一个值是未定义的

判断一个值是否未定义,就是判断值是否undefined可以通过typeof()这个方法来获取值的类型12345678910111213141516171819202122232425262728293031323334353637383940var a ;if(typeof(a)==="undefined"){//a为undefined类型}a = 123;if(typeof(a)==="number"){//a为number类型}a={};if(typeof(a)==="object"){//a为object类型}a="abc";if(typeof(a)==="string"){//a为string类型}a=true;if(typeof(a)==="boolean"){//a为boolean类型}a=function(){};if(typeof(a)==="function"){//a为function类型}a=[];if(typeof(a)==="object"){//值为数组的时候,typeof返回也是"object"}要判断值是否为数组,可以通过instanceof方法,判断一个值是否为另一个值的实例a=[];if(a instanceof Array){//a为数组}

javascript中Array的类型为什么是object

给你一句话,js 万物皆对象

关于JavaScript的变量的数据类型的判断方法

虽然Javascript是弱类型语言,但是,它也有自己的几种数据类型,分别是:Number、String、Boolean、Object、Udefined、Null。其中,Object属于复杂数据类型,Object 由无序的键值对组成。其余几种都属于简单数据类型。注意:变量类型首字母大写,而变量值首字母是小写的。JavaScript不支持自定义类型,所以JavaScript中的所有值都属于这六种类型之一。要搞清楚一个变量是何种数据类型,就要使用typeof操作符了,注意,尤其要注意的是,typeof是操作符,不是方法,因此,typeof中的字母"o"是小写的。语法:typeoftemp; //temp是一个变量,这里可以不加括号,但是为了程序的可读性,最好还是加上括号。JavaScript本身可以用它typeof来检测变量的类型,但是有些结果却让人疑惑,例如,数组的类型居然是"Object"。下面是用typeof对各种数据类型的判断结果varmyFunction=function(){console.log("hello");};varmyObject={foo:"bar"};varmyArray=["a","b","c"];varmyString="hello";varmyNumber=3;typeofmyFunction;//返回"function"typeofmyObject;//返回"object"typeofmyArray;//返回"object"--小心哦!typeofmyString;//返回"string";typeofmyNumber;//返回"number"typeofnull;//返回"object"--小心哦!if(myArray.push&&myArray.slice&&myArray.join){//很可能是一个数组//当看到一只鸟走起来像鸭子、游泳起来像鸭子、叫起来也像鸭子,那么这只鸟就可以被称为鸭子。}if(Object.prototype.toString.call(myArray)==="[objectArray]"){//肯定是一个数组!//这是判断一个变量是否为数组的最可靠方法}

javascript的数据类型有几种

数值、布尔、字符串、数组,其他都是对象。其实字符串和数组也是对象,但javascript能直接支持。另外一种能直接支持的对象类型是正则表达式。

javascript笔试题,如下,我想知道function f(){}为什么成立,为什么typeof f之后就是string类型

我的理解是 function f() 返回布尔是true 执行if里面的语句 但是fc f()本身加了if的()变立即执行函数了 执行完销毁 所以typeof f 这个f是undefined 然后typeof undefined 返回的就是字符串的“undefined”局部可以访问到全局 所以是 1 + “undefined” 用到隐式类型转换 返回 “1undefined"

javascript typeof( ) 出来的结果都是string

写了代码测试了下<script>document.write ("typeof(1): "+typeof(1)+"<br>");document.write ("typeof(NaN): "+typeof(NaN)+"<br>");document.write ("typeof(Number.MIN_VALUE): "+typeof(Number.MIN_VALUE)+"<br>")document.write ("typeof(Infinity): "+typeof(Infinity)+"<br>")document.write ("typeof("123"): "+typeof("123")+"<br>")document.write ("typeof(true): "+typeof(true)+"<br>")document.write ("typeof(window): "+typeof(window)+"<br>")document.write ("typeof(document): "+typeof(document)+"<br>")document.write ("typeof(null): "+typeof(null)+"<br>")

if(typeof(Worker)!=="undefined"),,,能解释下吗?在javascript中,typeof的用法

typeof返回一个用来表示表达式的数据类型的字符串。typeof 返回值有六种可能: "number," "string," "boolean," "object," "function," 和 "undefined."。举个例子:var a = 10; var typeofExample = function() { alert(typeof(a)); }();//结果:number

java中用什么方法判断数据类型,就行 javascript中的 typeOf一样

用 instanceof,判断时需要用基本类型的封装类例:if (i instanceof Integer) {System.out.println("haha");}

JavaScript typeof()

javascript不存在typeof函数,typeof在js中为一元运算符,用于类型检查。而根据运算符优先级规则,()的优先级远远大于typeof,所以typeof()相对于先执行()内的内容,然后使用typeof运算符进行类型检测。

javascript中typeof返回的结果有哪几种?

"js里面的typeof有六种

JavaScript中使用typeof运算符需要注意的几个坑_javascript技巧

typeof是一个运算符,它对操作数返回的结果是一个字符串,有6种(只针对ES,不包含HOST环境对象)。1."undefined"2."boolean"3."string"4."number"5."object"6."function"因为它本身是运算符,它不是函数,使用时没必要加个小括号。 代码如下:if (typeof(obj) === "undefined") { // ...}typeof用来判断类型,它有几个坑1. 对null返回是"object",你却不能真正当对象使用。 代码如下:var obj = nullif (typeof obj === "object") { obj.a() // 这里报错}2. 对NaN返回是"number",你却不能使用它进行算术运算。 代码如下:var obj = {}var num = parseInt(obj.a)if (typeof num === "number") { num = num + 10 // 执行后num仍然是NaN}3. 不能区分对象、数组、正则,对它们操作都返回"object"。 代码如下:var obj = {}var arr = []var reg = /pop/gconsole.log(typeof obj) // "object"console.log(typeof arr) // "object"console.log(typeof reg) // "object"4. Safar5,Chrome7之前的版本对正则对象返回 "function"。最后贴上规范里的解释

如何在JavaScript中实现私有属性的写类方式(二)_javascript技巧

上一篇写了个工具函数$class,这篇再完善以下。实现以下功能1,继承2,子类继承父类时,不继承父类的私有属性 代码如下:/** * @param {String} className * @param {String/Function} superCls * @param {Function} classImp */function $class(className, superCls, classImp){ if(superCls === "") superCls = Object; function clazz(){ if(typeof this.init == "function"){ this.init.apply(this, arguments); } } var p = clazz.prototype = new superCls(); var _super = superCls.prototype; window[className] = clazz; classImp.apply(p, [_super]); }先写个父类 代码如下:/** * 父类 Person */$class("Person","",function(){ // 私有属性age var age; this.init = function(n, a){ // 公有属性name this.name = n; // 私有属性初始化 age = a; }; this.getName = function(){ return this.name; }; this.setName = function(name){ this.name = name; } this.getAge = function(){ return age; }; this.setAge = function(a){ age = a; }; });写子类,继承于Person 代码如下:$class("Man",Person, function(supr){ var school; this.init = function(n, a, s){ supr.init.apply(this, [n,a]); school = s; } this.getSchool = function(){ return school; }; this.setSchool = function(s){ school = s; }; }); new一个子类实例 代码如下:var m = new Man("tom", 25, "pku"); console.log(m.name); // tom 继承父类的共有属性name可以直接使用点操作符获取 console.log(m.age); // undefined 父类的私有属性age不能直接使用点操作符获取 console.log(m.getAge()); // 25 可通过父类的共有方法getAge获取私有属性age console.log(m.school); // undefined Man自己的私有属性仍然不能通过点操作符获取 console.log(m.getSchool()); // pku 通过getSchool()方法获取私有属性school

javascript:如何在span中触发鼠标事件,有点难,高手请进

<span onclick="js函数名"/> 鼠标单击事件<span ondblclick="js函数名"/> 鼠标双击事件<span onmouseover="js函数名"/> 或onmousermove,onmouseup,onmousedown,onmouseout

javascript if(!validate()) 中!表示什么

对validate()函数的返回值做!(非)运算,也就是说,如果validate()函数返回true,那么!validate()就是false,如果validate()函数返回false,那么!validate()就是true。

HTML、JavaScript、CSS、PHP技术在Web开发中的作用是什么?

html 网页的组成部分,是一种标记性语言而不是编程语言,像你随便打开一个网页他都是由HTML搭建起来的。JavaScript 一种嵌入在浏览器内的客户端脚本语言,属于解释型语言,也就是说在运行的时候不需要编译,而是由浏览器来对他的代码翻译成浏览器本身能认识的玩意再执行,不同于编程语言的是编程语言都是需要把编写的代码编译成机器码才能执行。而他的主要作用之一就是用于特效制作,像那些网站有很多特效的,比如说鼠标放到连接上,然后点一下就出现一个登录框框什么的基本都是JavaScript实现的,还有就是验证你有没有输入内容什么的,像注册用户的时候基本都是它了。最后就是AJAX了,其实AJAX也是拿JavaScript来写的,不过他是后台执行的,传输的协议是SOPA协议,然后模拟一个表单请求达到不刷新页面来实现网页内容的替换什么的。像百度地图啊,然后还有就是注册用户的时候你输入一个用户名然后提示有没有注册了,基本都是AJAX来实现的,后台去数据库查找数据,然后再把网页上的内容更改。CSS 就相当于化妆师,像你一个HTML网页如果不用CSS来修饰的话可以说是无法见人的,就像现在一个丑女可以PS成一个神仙姐姐一样,CSS就是把HTML页面来美化的玩意。PHP 是后台服务器语言,而之前说的JAVASCRIPT是客户端脚本语言,一个执行在浏览器,一个执行在服务端,也就是说当你点一个登录之后数据传递到服务端,然后服务端肯定要对这个登录用户名和密码进行判断把?那他肯定就要用一种语言来对这些数据进行操作吧?而PHP就是这些语言中的一种,还有其他的比如asp.net,asp,Java等等。当然了他不止就是处理数据什么的这么简单,这里只是说下他的一个功能,像处理请求啊,权限管理什么的都是他可以完成的以上纯属手打,希望对你有帮助。请采纳,谢谢。。PC-系统维护群欢迎你的加入

javascript中如何判断一个函数是async函数

Java是一种广泛使用的计算机编程语言,拥有跨平台、面向对象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言,应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展,Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。Java编程语言的风格十分接近C++语言。继承了C++语言面向对象技术的核心,Java舍弃了C++语言中容易引起错误的指针,改以引用取代,同时移除原C++与原来运算符重载,也移除多重继承特性,改用接口取代,增加垃圾回收器功能。在Java SE 1.5版本中引入了泛型编程、类型安全的枚举、不定长参数和自动装/拆箱特性。太阳微系统对Java语言的解释是:“Java编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言”Java不同于一般的编译语言或直译语言。它首先将源代码编译成字节码,然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了“一次编写,到处运行”的跨平台特性。在早期JVM中,这在一定程度上降低了Java程序的运行效率。但在J2SE1.4.2发布后,Java的运行速度有了大幅提升。与传统类型不同,Sun公司在推出Java时就将其作为开放的技术。全球数以万计的Java开发公司被要求所设计的Java软件必须相互兼容。“Java语言靠群体的力量而非公司的力量”是 Sun公司的口号之一,并获得了广大软件开发商的认同。这与微软公司所倡导的注重精英和封闭式的模式完全不同,此外,微软公司后来推出了与之竞争的.NET平台以及模仿Java的C#语言。后来Sun公司被甲骨文公司并购,Java也随之成为甲骨文公司的产品。现时,移动操作系统Android大部分的代码采用Java 编程语言编程。早期的JavaJava的发明人詹姆斯·高斯林Duke,Java语言的吉祥物语言最开始只是Sun计算机(Sun MicroSystems)公司在1990年12月开始研究的一个内部项目。Sun计算机公司的一个叫做帕特里克·诺顿的工程师被公司自己开发的C++和C语言编译器搞得焦头烂额,因为其中的API极其难用。帕特里克决定改用NeXT,同时他也获得了研究公司的一个叫做“Stealth计划”的项目的机会。“Stealth计划”后来改名为“Green计划”,詹姆斯·高斯林和麦克·舍林丹也加入了帕特里克的工作小组。他们和其他几个工程师一起在加利福尼亚州门罗帕克市沙丘路的一个小工作室里面研究开发新技术,瞄准下一代智能家电(如微波炉)的程序设计,Sun公司预料未来科技将在家用电器领域大显身手。团队最初考虑使用C++语言,但是很多成员包括Sun的首席科学家比尔·乔伊,发现C++和可用的API在某些方面存在很大问题。工作小组使用的是嵌入式系统,可以用的资源极其有限。很多成员发现C++太复杂以至很多开发者经常错误使用。他们发现C++缺少垃圾回收系统,还有可移植的安全性、分布程序设计、和多线程功能。最后,他们想要一种易于移植到各种设备上的平台。根据可用的资金,乔伊决定开发一种集C语言和Mesa语言大成的新语言,在一份报告上,乔伊把它叫做“未来”,他提议Sun公司的工程师应该在C++的基础上,开发一种面向对象的环境。最初,高斯林试图修改和扩展C++的功能,他自己称这种新语言为C++ ++ --,但是后来他放弃了。他将要创造出一种全新的语言,被他命名为“Oak”(橡树),以他的办公室外的橡树命名。就像很多开发新技术的秘密工程一样,工作小组没日没夜地工作到了1993年的夏天,他们能够演示新平台的一部分了,包括Green操作系统,Oak的程序设计语言,类库及其硬件。最初的尝试是面向一种类PDA设备,被命名为Star7,这种设备有鲜艳的图形界面和被称为“Duke”的智能代理来帮助用户。1992年12月3日,这台设备进行了展示。同年11月,Green计划被转化成了“FirstPerson有限公司”,一个Sun公司的全资子公司,团队也被重新安排到了帕洛阿尔托。FirstPerson团队对建造一种高度交互的设备感兴趣,当时代华纳发布了一个关于电视机顶盒的征求提议书时(Request for proposal),FirstPerson改变了他们的目标,作为对征求意见书的响应,提出了一个机顶盒平台的提议。但是有线电视业界觉得FirstPerson的平台给予用户过多的控制权,因此FirstPerson的投标败给了SGI。与3DO公司的另外一笔关于机顶盒的交易也没有成功,由于他们的平台不能在电视工业产生任何效益,公司被并回Sun公司。Java和互联网1994年6月,在经历了一场历时三天的脑力激荡的讨论后,约翰·盖吉、詹姆斯·高斯林、比尔·乔伊、帕特里克·诺顿、韦恩·罗斯因和埃里克·斯库米,团队决定再一次改变了努力的目标,这次他们决定将该技术应用于万维网。他们认为随着Mosaic浏览器的到来,因特网正在向同样的高度互动的远景演变,而这一远景正是他们在有线电视网中看到的。作为原型,帕特里克·诺顿写了一个小型万维网浏览器,WebRunner,后来改名为HotJava[12]。1994年10月,HotJava和Java平台为公司高层进行演示。1994年,Java 1.0a版本已经可以提供下载,但是Java和HotJava浏览器的第一次公开发布却是在1995年3月23日SunWorld大会上进行的。升阳公司的科学指导约翰·盖吉宣告Java技术。这个发布是与网景公司的执行副总裁马克·安德森的惊人发布一起进行的,宣布网景将在其浏览器中包含对Java的支持。1996年1月,升阳公司成立了Java业务集团,专门开发Java技术。Java和“Java”由于商标搜索显示,Oak已被一家显示卡制造商注册。于是同年,Oak被改名为Java。当使用十六进制编辑器打开由Java源代码编译出的二进制文件(.class文件)的话,最前面的32位将显示为CA FE BA BE,即词组“CAFE BABE”(咖啡屋宝贝)。Java近况一套Java编辑器软件J2SE环境与CDC的关连JVM的所在角色JSPX网页的概念在流行几年之后,Java在浏览器中的地位被逐步侵蚀。它在简单交互性动画方面的用途已经完全被Adobe公司的Flash排挤,2005年Java倾向只被用于雅虎游戏那样的更为复杂的应用程序。Java同时遭受到来自微软的反对,他们决定在新版本的Internet Explorer和Windows中不再附带Java平台。与此相反。在万维网的服务器端和手持设备上,Java变得更加流行。很多网站在后端使用JSP和其他的Java技术。在桌面系统上,独立的Java程序还是相对少见,这是因为Java平台的运行开销较大,而许多人的电脑上没有安装Java,由于网络带宽在以前较小,下载Java曾经是个耗时的事情。但是随着计算机计算能力、网络带宽在10年中获取了很大的进步,同时虚拟机和编译器的质量得到了提高,许多应用程序得到了广泛的使用,包括:开源软件:NetBeans和Eclipse等软件开发工具Android操作系统JEditAzureus BitTorrent客户端。JNode操作系统Apache软件基金会的Ant、Derby、Hadoop、Jakarta、POI和TomcatJBoss和GlassFish应用服务器商业软件:EIOffice(永中Office)Minecraft纯Java 3D游戏合金战士ChromeIBM Websphere、ColdFusion和WebLogicIntelliJ IDEA还有许多用Java写的软件,可以在http://www.java.com 找到。在以下网页可以看到非常多用Java写的程序:http://java.sun.com/products/ 下面有大量用Java Swing开发的桌面Java程序 http://java.sun.com/products/jfc/tsc/sightings/ 目前Java提供以下三个版本:Java Platform, Enterprise Edition(Java EE:Java平台企业版)Java Platform, Standard Edition(Java SE:Java平台标准版)Java Platform, Micro Edition(Java ME:Java平台微型版)Java Platform, Card EditionJava开放源代码项目2006年SUN在JavaOne公布Java 开放源代码项目,并推出OpenJDK项目。[13]Java虚拟机、Java编译器和Java类库以GNU通用公共许可证公开。版本历史主条目:Java版本历史1995年5月23日,Java语言诞生1996年1月,第一个JDK-JDK1.0诞生1996年4月,10个最主要的操作系统供应商申明将在其产品中嵌入JAVA技术1996年9月,约8.3万个网页应用了JAVA技术来制作1997年2月18日,JDK1.1发布1997年4月2日,JavaOne会议召开,参与者逾一万人,创当时全球同类会议规模之纪录1997年9月,JavaDeveloperConnection社区成员超过十万1998年2月,JDK1.1被下载超过2,000,000次1998年12月8日,JAVA2企业平台J2EE发布1999年6月,SUN公司发布Java的三个版本:标准版(J2SE)、企业版(J2EE)和微型版(J2ME)2000年5月8日,JDK1.3发布2000年5月29日,JDK1.4发布2001年6月5日,NOKIA宣布,到2003年将出售1亿部支持Java的手机2001年9月24日,J2EE1.3发布2002年2月26日,J2SE1.4发布,自此Java的计算能力有了大幅提升2004年9月30日18:00PM,J2SE1.5发布,成为Java语言发展史上的又一里程碑。为了表示该版本的重要性,J2SE1.5更名为Java SE 5.02005年6月,JavaOne大会召开,SUN公司公开Java SE 6。此时,Java的各种版本已经更名,以取消其中的数字“2”:J2EE更名为Java EE,J2SE更名为Java SE,J2ME更名为Java ME2006年12月,SUN公司发布JRE6.02009年12月,SUN公司发布Java EE 62010年11月,由于Oracle公司对于Java社区的不友善,因此Apache扬言将退出JCP[14]2011年7月28日,Oracle公司发布Java SE 72014年3月18日,Oracle公司发表Java SE 8语言特性Java之所以被开发,是要达到以下五个目的:应当使用面向对象程序设计方法学应当允许同一程序在不同的计算机平台执行应当包括内建的对计算机网络的支持应当被设计成安全地执行远端代码应当易于使用,并借鉴以前那些面向对象语言(如C++)的长处。Java技术主要分成几个部分:Java语言、Java运行环境、类库。一般情况下说Java时并不区分指的是哪个部分。Java在1.5版本时,做了重大改变,Sun公司并1.5版本重命名为Java 5.0。面向对象Java的特点之一就是面向对象,是程序设计方法的一种。“面向对象程序设计语言”的核心之一就是开发者在设计软件的时候可以使用自定义的类型和关联操作。代码和数据的实际集合体叫做“对象”。一个对象可以想象成绑定了很多“行为(代码)”和“状态(数据)”的物体。对于数据结构的改变需要和代码进行通信然后操作,反之亦然。面向对象设计让大型软件工程的计划和设计变得更容易管理,能增强工程的健康度,减少失败工程的数量。跨平台性Java语言的第二个特性就是跨平台性,也就是说使用Java语言编写的程序可以在编译后不用经过任何更改,就能在任何硬件设备条件下运行。这个特性经常被称为“一次编译,到处运行”。执行Java应用程序必须安装爪哇运行环境(Java Runtime Environment,JRE),JRE内部有一个Java虚拟机(Java Virtual Machine,JVM)以及一些标准的类库(Class Library)。通过JVM才能在电脑系统执行Java应用程序(Java Application),这与.Net Framework的情况一样,所以电脑上没有安装JVM,那么这些程序将不能够执行。实现跨平台性的方法是大多数编译器在进行Java语言程序的编码时候会生成一个用字节码写成的“半成品”,这个“半成品”会在Java虚拟机(解释层)的帮助下运行,虚拟机会把它转换成当前所处硬件平台的原始代码。之后,Java虚拟机会打开标准库,进行数据(图片、线程和网络)的访问工作。主要注意的是,尽管已经存在一个进行代码翻译的解释层,有些时候Java的字节码代码还是会被JIT编译器进行二次编译。有些编译器,比如GCJ,可以自动生成原始代码而不需要解释层。但是这些编译器所生成的代码只能应用于特定平台。并且GCJ目前只支持部分的Java API。甲骨文公司对于Java的许可是“全兼容的”,这也导致了微软和升阳关于微软的程序不支持RMI和JNI接口、并且增加特性为己所用的法律争端。升阳最终赢得了官司,获得了大约两千万美元的赔偿,法院强制要求微软执行升阳公司关于Java的许可要求。作为回应,微软不再在Windows系统中捆绑Java,最新的Windows版本,Windows Vista和Internet Explorer 7.0版本也不再提供对于Java应用程序和控件的支持。但是升阳公司和其他使用Java运行时系统的公司在Windows操作系统下对用户提供无偿的第三方插件和程序支持。Java语言使用解释层最初是为了轻巧性。所以这些程序的运行效率比C语言和C++要低很多,用户也对此颇有微词。很多最近的调查显示Java的程序运行速度比几年前要高出许多,有些同样功能的程序的效率甚至超过了C++和C语言编写的程序[来源请求]。Java语言在最开始应用的时候是没有解释层的,所有需要编译的代码都直接转换成机器的原始代码。这样做的后果就是获得了最佳的性能,但是程序臃肿异常。从JIT技术开始,Java的程序都经过一次转换之后才变成机器码。很多老牌的第三方虚拟机都使用一种叫做“动态编译”的技术,也就是说虚拟机实时监测和分析程序的运行行为,同时选择性地对程序所需要的部分进行编译和优化。所有这些技术都改善了代码的运行速度,但是又不会让程序的体积变得失常。程序的轻便性事实上是软件编写很难达到的一个目标,Java虽然成功地实现了“一次编译,到处运行”,但是由于平台和平台之间的差异,所编写的程序在转换代码的时候难免会出现微小的、不可察觉的错误和意外。有些程序员对此非常头疼,他们嘲笑Java的程序不是“一次编译,到处运行”,而是“一次编译,到处调试”。以JavaAWT为例,早期Java AWT内提供的按钮、文字区等均是以计算机系统所默认的样式而显示。这令Java程序在有些没有提供图案的计算机系统产生错误(在Microsoft Windows设有窗口管理器,在一些Linux distribution则没有)。后来SUN公司针对Java AWT一些问题而推出Java Swing。平台无关性让Java在服务器端软件领域非常成功。很多服务器端软件都使用Java或相关技术建立。自动垃圾回收(Garbage Collection)C++语言被用户诟病的原因之一是大多数C++编译器不支持垃圾收集机制。通常使用C++编程的时候,程序员于程序中初始化对象时,会在主机内存堆栈上分配一块内存与地址,当不需要此对象时,进行析构或者删除的时候再释放分配的内存地址。如果对象是在堆栈上分配的,而程序员又忘记进行删除,那么就会造成内存泄漏(MemoryLeak)。长此以往,程序运行的时候可能会生成很多不清除的垃圾,浪费了不必要的内存空间。而且如果同一内存地址被删除两次的话,程序会变得不稳定,甚至崩溃。因此有经验的C++程序员都会在删除之后将指针重置为NULL,然后在删除之前先判断指针是否为NULL。C++中也可以使用“智能指针”(Smart Pointer)或者使用C++托管扩展编译器的方法来实现自动化内存释放,智能指针可以在标准类库中找到,而C++(题主你怎么可以问这么沙比的问题!)托管扩展被微软的VisualC++ 7.0及以上版本所支持。智能指针的优点是不需引入缓慢的垃圾收集机制,而且可以不考虑线程安全的问题,但是缺点是如果不善使用智能指针的话,性能有可能不如垃圾收集机制,而且不断地分配和释放内存可能造成内存碎片,需要手动对堆进行压缩。除此之外,由于智能指针是一个基于模板的功能,所以没有经验的程序员在需要使用多态特性进行自动清理时也可能束手无策。Java语言则不同,上述的情况被自动垃圾收集功能自动处理。对象的创建和放置都是在内存堆栈上面进行的。当一个对象没有任何引用的时候,Java的自动垃圾收集机制就发挥作用,自动删除这个对象所占用的空间,释放内存以避免内存泄漏。注意程序员不需要修改finalize方法,自动垃圾收集也会发生作用。但是内存泄漏并不是就此避免了,当程序员疏忽大意地忘记解除一个对象不应该有的引用时,内存泄漏仍然不可避免。不同厂商、不同版本的JVM中的内存垃圾回收机制并不完全一样,通常越新版本的内存回收机制越快,IBM、BEA、SUN等等开发JVM的公司都曾宣称过自己制造出了世界上最快的JVM[来源请求],JVM性能的世界纪录也在不断的被打破并提高。IBM有一篇有关Java内存回收机制比不激活垃圾收集机制的C++内存处理快数倍的技术文章[15],而著名的Java技术书籍《Java编程思想》(Thinking in Java)也有一段论述Java内存及性能达到甚至超过C++的章节[16]。基本语法编写Java程序前应注意以下几点:大小写敏感:Java是大小写敏感的,这就意味着标识符Hello与hello是不同的。类名:对于所有的类来说,类名的首字母应该大写。如果类名由若干单词组成,那么每个单词的首字母应该大写,例如MyFirstJavaClass。方法名:所有的方法名都应该以小写字母开头。如果方法名含有若干单词,则后面的每个单词首字母大写,例如myFirstJavaMethod。源文件名:源文件名必须和类名相同。当保存文件的时候,你应该使用类名作为文件名保存(切记Java是大小写敏感的),文件名的后缀为.java。(如果文件名和类名不相同则会导致编译错误)。主方法入口:所有的Java程序由public static void main(String[] args)方法开始执行。Java关键字关键字 下面列出了Java关键字。这些关键字不能用于常量、变量、和任何标识符的名称。关键字 描述 abstract 抽象方法,抽象类的修饰符 assert 断言条件是否满足 continue 不执行循环体剩余部分 default switch语句中的默认分支 do-while 循环语句,循环体至少会执行一次 double 64-bit双精度浮点数 else if条件不成立时执行的分支 enum 枚举类型 extends 表示一个类是另一个类的子类 final 表示定义常量 finally 无论有没有异常发生都执行代码 float 32-bit单精度浮点数 for for循环语句 goto 用于流程跳转(不可用,意即不可随意跳转) if 条件语句 implements 表示一个类实现了接口 import 导入类 instanceof 测试一个对象是否是某个类的实例 int 32位整型数 interface 接口,一种抽象的类型,仅有方法和常量的定义 long 64位整型数 native 表示方法用非java代码实现 new 分配新的类实例 package 一系列相关类组成一个包 private 表示私有字段,或者方法等,只能从类内部访问 protected 表示保护类型字段 public 表示共有属性或者方法 return 方法返回值 short 16位数字 static 表示在类级别定义,所有实例共享的 strictfp 浮点数比较使用严格的规则 super 表示基类 switch 选择语句 synchronized 表示同一时间只能由一个线程访问的代码块 this 调用当前实例或者调用另一个构造函数 throw 抛出异常 throws 定义方法可能抛出的异常 transient 修饰不要序列化的字段 try 表示代码块要做异常处理 void 标记方法不返回任何值 volatile 标记字段可能会被多个线程同时访问,而不做同步 while while循环 注释注释作用:标识程序是干什么的,以及它是如何构建的。注释帮助程序员进行相互沟通以及理解程序。注释不是程序设计语言,所以编译器编译程序时忽略它们。接口和类别Java自带了创建接口的类别,可以这样使用:public interface Deleteable {void delete();}这段代码的意思是任何实现(implement)Deleteable接口的类别都必须实现delete()方法。每个类别对这个方法的实现可以自行定制。由此概念可以引出很多种使用方法,下面是一个类别的例子:

如何丰富alt属性的显示效果_javascript技巧

IE默认会给带alt属性图片和带title的链接一个浮动显示 蓝色理想[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]很多朋友觉得不好看或者功能不丰富想改改,搜集了几种办法大家研究下.popShow{ background:#ffffcc; border:1px solid black; padding:4px;font-family:verdana; font-size:70%; width:300px;filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr="#0099FF", EndColorStr="#00FFFF") } .popImg{ border:0px; cursor: hand; } var oPopup = window.createPopup(); function fnDef() { oPopup.document.body.innerHTML = ""+event.srcElement.title+""; var popupBody = oPopup.document.body; oPopup.show(0, 0, 300, 50); var realHeight = popupBody.scrollHeight; oPopup.hide(); oPopup.show(0, 15 , 300, realHeight, event.srcElement); } [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]var ns4 = document.layers; var ns6 = document.getElementById && !document.all; var ie4 = document.all; offsetX = 0; offsetY = 20; var toolTipSTYLE=""; function initToolTips() { if(ns4||ns6||ie4) { if(ns4) toolTipSTYLE = document.toolTipLayer; else if(ns6) toolTipSTYLE = document.getElementById("toolTipLayer").style; else if(ie4) toolTipSTYLE = document.all.toolTipLayer.style; if(ns4) document.captureEvents(Event.MOUSEMOVE); else { toolTipSTYLE.visibility = "visible"; toolTipSTYLE.display = "none"; } document.onmousemove = moveToMouseLoc; } } function toolTip(msg, fg, bg) { if(toolTip.arguments.length < 1) // hide { if(ns4) toolTipSTYLE.visibility = "hidden"; else toolTipSTYLE.display = "none"; } else // show { if(!fg) fg = "#777777"; if(!bg) bg = "#FFFFFF"; var content = "" + "&nbsp;" + msg + "&nbsp;"; if(ns4) { toolTipSTYLE.document.write(content); toolTipSTYLE.document.close(); toolTipSTYLE.visibility = "visible"; } if(ns6) { document.getElementById("toolTipLayer").innerHTML = content; toolTipSTYLE.display="block" } if(ie4) { document.all("toolTipLayer").innerHTML=content; toolTipSTYLE.display="block" } } } function moveToMouseLoc(e) { if(ns4||ns6) { x = e.pageX; y = e.pageY; } else { x = event.x + document.body.scrollLeft; y = event.y + document.body.scrollTop; } toolTipSTYLE.left = x + offsetX; toolTipSTYLE.top = y + offsetY; return true; } 四川辣椒的艺术 (转) [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]var tipTimer; function locateObject(n, d) { //v3.0 var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) { d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);} if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i (document.body.clientWidth + document.body.scrollLeft)) { locateObject(object).style.left = (document.body.clientWidth + document.body.scrollLeft) - locateObject(object).clientWidth-10; } else { locateObject(object).style.left=document.body.scrollLeft+event.clientX } locateObject(object).style.visibility="visible" tipTimer=window.setTimeout("hideTooltip(""+object+"")", displaytime); return true; } else if (document.layers) { locateObject(object).document.write(""+unescape(tipContent)+"") locateObject(object).document.close() locateObject(object).top=e.y+20 if ((e.x + locateObject(object).clip.width) > (window.pageXOffset + window.innerWidth)) { locateObject(object).left = window.innerWidth - locateObject(object).clip.width-10; } else { locateObject(object).left=e.x; } locateObject(object).visibility="show" tipTimer=window.setTimeout("hideTooltip(""+object+"")", displaytime); return true; } else { return true; } } ", "#fffff2","#000000","#000000","20000")" onMouseOut="hideTooltip("dHTMLToolTip")">点这里 [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行].link{font-family:verdana,arial,helvetica; font-size:8pt; color:#003399; font-weight:normal} .link:hover{font-family:verdana,arial,helvetica; font-size:8pt; color:#0099FF; font-weight:normal} .prem_hint{font-family:verdana,arial,helvetica; font-size:8pt; color:#ffffff; font-weight:normal} .header{font-family:arial,verdana,helvetica; font-size:20pt; color:#ffff00; font-weight:bold} // Location of this script: // http://www.geocities.com/e_i_search/premshree/pub/scripts/JS/link_hint_scroller.htm //********************************************* //* Link Hint Scroller 1.0 * //* This script when you move your mouse over * //* displays a scrolling hint * //* (c) Premshree Pillai, * //* http://qik.cjb.net * //* E-mail : premshree@hotmail.com * //* Use the script freely as long as this * //* message is intact * //********************************************* window.onerror = null; var bName = navigator.appName; var bVer = parseInt(navigator.appVersion); var NS4 = (bName == "Netscape" && bVer >= 4); var IE4 = (bName == "Microsoft Internet Explorer" && bVer >= 4); var NS3 = (bName == "Netscape" && bVer < 4); var IE3 = (bName == "Microsoft Internet Explorer" && bVer < 4); var scroll_length = 150; //The scroll length var time_length =50; //Scroll speed var begin_pos = 100; //Start position of scroll hint var i; var j; if (NS4 || IE4) { if (navigator.appName == "Netscape") { layerStyleRef="layer."; layerRef="document.layers"; styleSwitch=""; }else{ layerStyleRef="layer.style."; layerRef="document.all"; styleSwitch=".style"; } } //SCROLL function Scroll(layerName){ if (NS4 || IE4) { if (NS4 || IE4) { if(i

怎么用javascript进行拖拽2_javascript技巧

var iMouseDown = false; var dragObject = null; var curTarget = null; function makeDraggable(item){ if(!item) return; item.onmousedown = function(ev){ dragObject = this; mouseOffset = getMouseOffset(this, ev); return false; } } function getMouseOffset(target, ev){ ev = ev || window.event; var docPos = getPosition(target); var mousePos = mouseCoords(ev); return {x:mousePos.x - docPos.x, y:mousePos.y - docPos.y}; } function getPosition(e){ var left = 0; var top = 0; while (e.offsetParent){ left += e.offsetLeft + (e.currentStyle?(parseInt(e.currentStyle.borderLeftWidth)).NaN0():0); top += e.offsetTop + (e.currentStyle?(parseInt(e.currentStyle.borderTopWidth)).NaN0():0); e = e.offsetParent; } left += e.offsetLeft + (e.currentStyle?(parseInt(e.currentStyle.borderLeftWidth)).NaN0():0); top += e.offsetTop + (e.currentStyle?(parseInt(e.currentStyle.borderTopWidth)).NaN0():0); return {x:left, y:top}; } function mouseCoords(ev){ if(ev.pageX || ev.pageY){ return {x:ev.pageX, y:ev.pageY}; } return { x:ev.clientX + document.body.scrollLeft - document.body.clientLeft, y:ev.clientY + document.body.scrollTop - document.body.clientTop }; } function mouseDown(ev){ ev = ev || window.event; var target = ev.target || ev.srcElement; if(target.onmousedown || target.getAttribute("DragObj")){ return false; } } function mouseUp(ev){ dragObject = null; iMouseDown = false; } function mouseMove(ev){ ev = ev || window.event; /* We are setting target to whatever item the mouse is currently on Firefox uses event.target here, MSIE uses event.srcElement */ var target = ev.target || ev.srcElement; var mousePos = mouseCoords(ev); if(dragObject){ dragObject.style.position = "absolute"; dragObject.style.top = mousePos.y - mouseOffset.y; dragObject.style.left = mousePos.x - mouseOffset.x; } // track the current mouse state so we can compare against it next time lMouseState = iMouseDown; // this prevents items on the page from being highlighted while dragging if(curTarget || dragObject) return false; } document.onmousemove = mouseMove; document.onmousedown = mouseDown; document.onmouseup = mouseUp; window.onload = function() { makeDraggable(document.getElementById("DragImage5")); makeDraggable(document.getElementById("DragImage6")); makeDraggable(document.getElementById("DragImage7")); makeDraggable(document.getElementById("DragImage8")); } Demo - Drag any of the images [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]你会注意到这个代码几乎是前面的全集,将前面的合在一起就实现了拖拽效果了. 当我们点击一个item时,我们就获取了很多变量,如鼠标位置,鼠标位置自然就包含了那个item的坐标信息了.如果我们点击了一个20*20px图像的正中间,那么鼠标的相对坐标为{x:10,y:10}.当我们点击这个图像的左上角那么鼠标的相对坐标为{x:0,y:0}.当我们点击时,我们用这个方法取得一些鼠标与图片校对的信息.如果我们不能加载页面item,那么信息将是document信息,会忽略了点击的item信息. mouseOffset函数使用了另一个函数getPosition.getPosition的作用是返回item相对页面左上角的坐标,如果我们尝试获取item.offsetLeft或者item.style.left,那么我们将取得item相对与父级的位置,不是整个document.所有的脚本我们都是相对整个document,这样会更好一些. 为了完成getPosition任务,必须循环取得item的父级,我们将加载内容到item的左/上的位置.我们需要管理想要的top与left列表. 自从定义了mousemove这个函数,mouseMove就会一直运行.第一我们确定item的style.position为absolute,第二我们移动item到前面定义好的位置.当mouse点击被释放,dragObject被设置为null,mouseMove将不在做任何事. Dropping an Item 前面的例子目的很简单,就是拖拽item到我们希望到的地方.我们经常还有其他目的如删除item,比如我们可以将item拖到垃圾桶里,或者其他页面定义的位置. 很不幸,我们有一个很大的难题,当我们拖拽,item会在鼠标之下,比如mouseove,mousedown,mouseup或者其他mouse action.如果我们拖拽一个item到垃圾桶上,鼠标信息还在item上,不在垃圾桶上. 怎么解决这个问题呢?有几个方法可以来解决.第一,这是以前比较推荐的,我们在移动鼠标时item会跟随鼠标,并占用了mouseover/mousemove等鼠标事件,我们不这样做,只是让item跟随着鼠标,并不占用mouseover等鼠标事件,这样会解决问题,但是这样并不好看,我们还是希望item能直接跟在mouse下. 另一个选择是不做item的拖拽.你可以改变鼠标指针来显示需要拖拽的item,然后放在鼠标释放的位置.这个解决方案,也是因为美学原因不予接受. 最后的解决方案是,我们并不去除拖拽效果.这种方法比前两种繁杂许多,我们需要定义我们需要释放目标的列表,当鼠标释放时,手工去检查释放的位置是否是在目标列表位置上,如果在,说明是释放在目标位置上了. 代码如下:/* All code from the previous example is needed with the exception of the mouseUp function which is replaced below */ var dropTargets = []; function addDropTarget(dropTarget){ dropTargets.push(dropTarget); } function mouseUp(ev){ ev = ev || window.event; var mousePos = mouseCoords(ev); for(var i=0; i targPos.x) && (mousePos.x < (targPos.x + targWidth)) && (mousePos.y > targPos.y) && (mousePos.y < (targPos.y + targHeight))){ // dragObject was dropped onto curTarget! } } dragObject = null; } var iMouseDown = false; var dragObject = null; Number.prototype.NaN0=function(){return isNaN(this)?0:this;} // Demo 0 variables var DragDrops = []; var curTarget = null; var lastTarget = null; function makeDraggable(item){ if(!item) return; item.onmousedown = function(ev){ dragObject = this; mouseOffset = getMouseOffset(this, ev); return false; } } function getMouseOffset(target, ev){ ev = ev || window.event; var docPos = getPosition(target); var mousePos = mouseCoords(ev); return {x:mousePos.x - docPos.x, y:mousePos.y - docPos.y}; } function getPosition(e){ var left = 0; var top = 0; while (e.offsetParent){ left += e.offsetLeft + (e.currentStyle?(parseInt(e.currentStyle.borderLeftWidth)).NaN0():0); top += e.offsetTop + (e.currentStyle?(parseInt(e.currentStyle.borderTopWidth)).NaN0():0); e = e.offsetParent; } left += e.offsetLeft + (e.currentStyle?(parseInt(e.currentStyle.borderLeftWidth)).NaN0():0); top += e.offsetTop + (e.currentStyle?(parseInt(e.currentStyle.borderTopWidth)).NaN0():0); return {x:left, y:top}; } function mouseCoords(ev){ if(ev.pageX || ev.pageY){ return {x:ev.pageX, y:ev.pageY}; } return { x:ev.clientX + document.body.scrollLeft - document.body.clientLeft, y:ev.clientY + document.body.scrollTop - document.body.clientTop }; } function mouseDown(ev){ ev = ev || window.event; var target = ev.target || ev.srcElement; if(target.onmousedown || target.getAttribute("DragObj")){ return false; } } function mouseUp(ev){ //dragObject = null; if(dragObject){ ev = ev || window.event; var mousePos = mouseCoords(ev); var dT = dragObject.getAttribute("droptarget"); if(dT){ var targObj = document.getElementById(dT); var objPos = getPosition(targObj); if((mousePos.x > objPos.x) && (mousePos.y > objPos.y) && (mousePos.x=0; i--){ with(activeCont.childNodes[i]){ if(nodeName=="#text") continue; // if the current item is "After" the item being dragged if( curTarget != activeCont.childNodes[i] && ((getAttribute("startLeft") + getAttribute("startWidth")) > xPos) && ((getAttribute("startTop") + getAttribute("startHeight")) > yPos)){ beforeNode = activeCont.childNodes[i]; } } } // the item being dragged belongs before another item if(beforeNode){ if(beforeNode!=curTarget.nextSibling){ activeCont.insertBefore(curTarget, beforeNode); } // the item being dragged belongs at the end of the current container } else { if((curTarget.nextSibling) || (curTarget.parentNode!=activeCont)){ activeCont.appendChild(curTarget); } } // make our drag item visible if(curTarget.style.display!=""){ curTarget.style.display = ""; } } else { // our drag item is not in a container, so hide it. if(curTarget.style.display!="none"){ curTarget.style.display = "none"; } } } // track the current mouse state so we can compare against it next time lMouseState = iMouseDown; // mouseMove target lastTarget = target; // track the current mouse state so we can compare against it next time lMouseState = iMouseDown; // this helps prevent items on the page from being highlighted while dragging return false; } function mouseUp(ev){ if(curTarget){ // hide our helper object - it is no longer needed dragHelper.style.display = "none"; // if the drag item is invisible put it back where it was before moving it if(curTarget.style.display == "none"){ if(rootSibling){ rootParent.insertBefore(curTarget, rootSibling); } else { rootParent.appendChild(curTarget); } } // make sure the drag item is visible curTarget.style.display = ""; } curTarget = null; iMouseDown = false; } function mouseDown(){ iMouseDown = true; if(lastTarget){ return false; } } document.onmousemove = mouseMove; document.onmousedown = mouseDown; document.onmouseup = mouseUp; window.onload = function(){ // Create our helper object that will show the item while dragging dragHelper = document.createElement("DIV"); dragHelper.style.cssText = "position:absolute;display:none;"; CreateDragContainer( document.getElementById("DragContainer1"), document.getElementById("DragContainer2"), document.getElementById("DragContainer3") ); document.body.appendChild(dragHelper); } Item #1 Item #2 Item #3 Item #4 Item #5 Item #6 Item #7 Item #8 Item #9 Item #10 Item #11 Item #12 [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]你现在拥有了拖拽的所有东西.下面的三个demo是记录事件历史.当你的鼠标在item上移动,将记录所生的事件,如果你不明白可以尝试一下鼠标的划过或者拖动,看有什么发生.LI { MARGIN-B

用javascript实现计算日期,推算上早晚班

<script type="text/javascript"> function btnCount_Click(){ s1 = document.getElementById("zaodate").value; s2 = document.getElementById("date").value; var dd=DateDiff(s1,s2); if(dd%2==0){ alert("早班") } else{ alert("晚班") } } //计算天数差的函数,通用 function DateDiff(sDate1, sDate2){ //sDate1和sDate2是2006-12-18格式 var aDate, oDate1, oDate2, iDays aDate = sDate1.split("-") oDate1 = new Date(aDate[1] + "-" + aDate[2] + "-" + aDate[0]) //转换为12-18-2006格式 aDate = sDate2.split("-") oDate2 = new Date(aDate[1] + "-" + aDate[2] + "-" + aDate[0]) iDays = parseInt(Math.abs(oDate1 - oDate2) / 1000 / 60 / 60 /24) //把相差的毫秒数转换为天数 return iDays } </script><h1>输入日期的格式:YYYY-MM-DD,如:2006-12-18 </h1><br>默认以2009年8月10号是早班计算,如果想更改请修改这里:早班日期:<input name="zaodate" value="2009-8-10"><br>输入想查询的日期<input name="date" value="2009-08-11"><input name="" type="button" onclick="btnCount_Click()" value="计算" />

javascript中,设置width时,style="width:100px" 和width

没区别,规范问题

javascript函数自执行里的this为什么指向window

this指的是当前对象看你当前操作的是哪个对象了 视情况而定

pdf如何取消javascript提示

java可以利用iText(也有其他语言的)来加入: PdfReader reader = new PdfReader("c://1.pdf"); PdfStamper stamper = new PdfStamper(reader,new FileOutputStream(“c://new1.pdf”), "",true); PdfWriter writer = stamper.getWriter(); PushbuttonField button = new PushbuttonField(writer, new Rectangle(450, 750, 530, 800), "post"); PdfFormField submit = button.getField(); submit.setAction( PdfAction.javaScript("app.alert(‘hello,lec")", writer)); stamper.addAnnotation(submit, 1);

如何在PDF文件中调用JAVASCRIPT

这个问题问得好!!我也很想知道。。。

关于javascript中一个事件同时调用两个函数的问题

感觉这里addOnclick没有实际的用途,去掉 addOnClick照样能够正常运行。。恩,另外,addOnClick要起效果的话,执行一次就ok了,不需要每次都去运行~~

用javascript 当鼠标移动到任意文字上弹出框显示文字内容,不是加title属性

可以使用js的onmouseover、onMouseOut事件,鼠标经过的时候可以给a标签增加一个元素并让他显示,移出的时候删掉这个元素

编程,JavaScript中的onload无法多次调用,求解决办法

不但onload,所有事件都一样,如果同一个事件你写了多个触发的函数,那么它只会运行一个的。要想实现多次触发,必须使用addEventListener--“添加事件监听”的方法:window.addEventListener("load",函数1,false);window.addEventListener("load",函数2,false);要注意,这两个(或者更多)语句可以放在页面的不同地方(甚至可以是不同的js文件内),当网页加载(onload)时,这些函数就会逐一运行了。但是,上述方法在IE中无效,IE中要用attachEvent,而且用法也不同:window.attachEvent("onload",函数1);window.attachEvent("onload",函数2);

javascript 事件监听

比如说一个页面上有什么东西,其中有一个按钮,按钮被点击,我们希望能够知道并做一些操作这个就叫做按钮的点击事件监听比如如下代码按钮元素 有一个onclick事件(就是点击事件)当点击了 执行函数DoClick这就是上面的说的监听他的点击事件,并进行操作处理!(至于后台,比如说我点击了按钮,向后台提交一些数据如用户名 密码等)jsp/html代码:<input type="button" id="but" value="测试按钮" onclick="DoClick()">javascript代码<javascript>function DoClick()  {    alert("点击了按钮!希望对你有帮助!");   }</javascript>

请说明JavaScript中处理事件的步骤

事件处理程序的方式了:1. 设置HTML标签属性为事件处理程序  文档元素的事件处理程序属性,其名字由“on”后面跟着事件名组成,例如:onclick、onmouseover。当然了,这种形式只能为DOM元素注册事件处理程序。实例:<!DOCTYPE HTML><html><head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title>test</title> <style type="text/css"> #div1{width: 300px; height: 300px; background: red; overflow:hidden;} #div2{margin:50px auto; width: 200px; height: 200px; background: green; overflow:hidden;} #div3{margin:50px auto; width: 100px; height: 100px; background: blue;} </style></head><body> <div id="div1" onClick="console.log("div1");">div1 <div id="div2" oNClick="console.log("div2");">div2 <div id="div3" onclick="console.log("div3");" onclick="console.log("div3333");">div3 </div> </div> </div><script type="text/javascript"></script></body></html>结果(鼠标点击div3区域后):从结果中可以看出:  ①因为HTML里面不区分大小写,所以这里事件处理程序属性名大写、小写、大小混写均可,属性值就是相应事件处理程序的JavaScript代码;  ②若给同一元素写多个onclick事件处理属性,浏览器只执行第一个onclick里面的代码,后面的会被忽略;  ③这种形式是在事件冒泡过程中注册事件处理程序的;2.设置JavaScript对象属性为事件处理程序  可以通过设置某一事件目标的事件处理程序属性来为其注册相应的事件处理程序。事件处理程序属性名字由“on”后面跟着事件名组成,例如:onclick、onmouseover。实例:<!DOCTYPE HTML><html><head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title>test</title> <style type="text/css"> #div1{width: 300px; height: 300px; background: red; overflow:hidden;} #div2{margin:50px auto; width: 200px; height: 200px; background: green; overflow:hidden;} #div3{margin:50px auto; width: 100px; height: 100px; background: blue;} </style></head><body> <div id="div1">div1 <div id="div2">div2 <div id="div3">div3 </div> </div> </div><script type="text/javascript"> var div1 = document.getElementById("div1"); var div2 = document.getElementById("div2"); var div3 = document.getElementById("div3");  div1.onclick = function(){    console.log("div1");  };  div2.onclick = function(){    console.log("div2");  };  div3.onclick = function(){    console.log("div3");  };  div1.onclick = function(){    console.log("div11111");  };  div1.onClick = function(){    console.log("DIV11111");  };</script></body></html>结果(鼠标点击div3区域后): 从结果中可以看出:  ①因为JavaScript是严格区分大小写的,所以,这种形式下属性名只能按规定小写;  ②若给同一元素对象写多个onclick事件处理属性,后面写的会覆盖前面的(ps:这就是在修改一个对象属性的值,属性的值是唯一确定的);  ③这种形式也是在事件冒泡过程中注册事件处理程序的;3.addEventListener()  前两种方式出现在Web初期,众多浏览器都有实现。而addEventListener()方法是标准事件模型中定义的。任何能成为事件目标的对象——这些对象包括Window对象、Document对象和所有文档元素等——都定义了一个名叫addEventListener()的方法,使用这个方法可以为事件目标注册事件处理程序。addEventListener()接受三个参数:第一个参数是要注册处理程序的事件类型,其值是字符串,但并不包括前缀“on”;第二个参数是指当指定类型的事件发生时应该调用的函数;第三个参数是布尔值,其可以忽略(某些旧的浏览器上不能忽略这个参数),默认值为false。这种情况是在事件冒泡过程中注册事件处理程序。当其为true时,就是在事件捕获过程中注册事件处理程序。实例:<!DOCTYPE HTML><html><head>  <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>  <title>test</title>  <style type="text/css">    #div1{width: 300px; height: 300px; background: red; overflow:hidden;}    #div2{margin:50px auto; width: 200px; height: 200px; background: green; overflow:hidden;}    #div3{margin:50px auto; width: 100px; height: 100px; background: blue;}  </style></head><body>  <div id="div1">div1    <div id="div2">div2      <div id="div3">div3      </div>    </div>  </div><script type="text/javascript">  var div1 = document.getElementById("div1");  var div2 = document.getElementById("div2");  var div3 = document.getElementById("div3");  div1.addEventListener("click", function(){ console.log("div1-bubble"); }, false);  div2.addEventListener("click", function(){ console.log("div2-bubble"); }, false);  div3.addEventListener("click", function(){ console.log("div3-bubble"); }, false);  div3.addEventListener("click", function(){ console.log("div3-bubble222"); }, false);  div1.addEventListener("click", function(){ console.log("div1-capturing"); }, true);  div2.addEventListener("click", function(){ console.log("div2-capturing"); }, true);  div3.addEventListener("click", function(){ console.log("div3-capturing"); }, true);</script></body></html>结果(鼠标点击div3区域后):从结果中可以看出:  ①addEventListener()第三个参数的作用正如上面所说;  ②通过addEventListener()方法给同一对象注册多个同类型的事件,并不会发生忽略或覆盖,而是会按顺序依次执行;相对addEventListener()的是removeEventListener()方法,它同样有三个参数,前两个参数自然跟addEventListener()的意义一样,而第三个参数也只需跟相应的addEventListener()的第三个参数保持一致即可,同样可以省略,默认值为false。它表示从对象中删除某个事件处理函数。实例:div1.addEventListener("click", div1BubbleFun, false);div1.removeEventListener("click", div1BubbleFun, false);function div1BubbleFun(){ console.log("div1-bubble");}4.attachEvent()  但是,IE8以及其之前版本的浏览器并不支持addEventListener()和removeEventListener()。相应的,IE定义了类似的方法attachEvent()和detachEvent()。因为IE8以及其之前版本浏览器也不支持事件捕获,所以attachEvent()并不能注册捕获过程中的事件处理函数,因此attachEvent()和detachEvent()要求只有两个参数:事件类型和事件处理函数。而且,它们的第一个参数使用了带“on”前缀的事件处理程序属性名。实例:var div1 = document.getElementById("div1");div1.attachEvent("onclick", div1BubbleFun);function div1BubbleFun(){  console.log("div1-bubble");}  相应的,从对象上删除事件处理程序函数使用detachEvent()。例如:div1.detachEvent("onclick", div1BubbleFun);  到此为止,我们已经说了浏览器中事件传播机制以及各种注册事件处理程序的方法。下面我们就再说说事件处理程序调用时的一些问题吧!二.事件处理程序的调用1.事件处理程序的参数:正如前面所说,通常事件对象作为参数传递给事件处理函数,但IE8以及其之前版本的浏览器中全局变量event才是事件对象。所以,我们在写相关代码时应该注意兼容性问题。实例(给页面上id为div1的元素添加点击事件,当点击该元素时在控制台输出事件类型和被点击元素本身):<!DOCTYPE HTML><html><head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title>test</title> <style type="text/css"> #div1{width: 300px; height: 300px; background: red; overflow: hidden;} </style></head><body> <div id="div1">div1</div> <script type="text/javascript"> var div1 = document.getElementById("div1"); if(div1.addEventListener){ div1.addEventListener("click", div1Fun, false); }else if(div1.attachEvent){ div1.attachEvent("onclick", div1Fun); } function div1Fun(event){ event = event || window.event; var target = event.target || event.srcElement; console.log(event.type); console.log(target); } </script></body></html>2.事件处理程序的运行环境:关于事件处理程序的运行环境,也就是在事件处理程序中调用上下文(this值)的指向问题,可以看下面四个实例。实例一:<!DOCTYPE HTML><html><head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title>test</title> <style type="text/css"> #div1{width: 300px; height: 300px; background: red; overflow: hidden;} </style></head><body> <div id="div1" onclick="console.log("html:"); console.log(this);">div1</div> <script type="text/javascript"> </script></body></html>  结果一:  从结果可以看出:    ①第一种方法事件处理程序中this指向这个元素本身;实例二:<!DOCTYPE HTML><html><head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title>test</title> <style type="text/css"> #div1{width: 300px; height: 300px; background: red; overflow: hidden;} </style></head><body> <div id="div1" onclick="console.log("html:"); console.log(this);">div1</div> <script type="text/javascript"> var div1 = document.getElementById("div1"); div1.onclick = function(){ console.log("div1.onclick:"); console.log(this); }; </script></body></html>  结果二:  从结果可以看出:    ①第二种方法事件处理程序中this也指向这个元素本身;    ②存在第二种方法时,它会覆盖第一种方法注册的事件处理程序;实例三:<!DOCTYPE HTML><html><head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title>test</title> <style type="text/css"> #div1{width: 300px; height: 300px; background: red; overflow: hidden;} </style></head><body> <div id="div1" onclick="console.log("html:"); console.log(this);">div1</div> <script type="text/javascript"> var div1 = document.getElementById("div1"); div1.onclick = function(){ console.log("div1.onclick:"); console.log(this); }; div1.addEventListener("click", function(){ console.log("div1.addEventListener:"); console.log(this); }, false); </script></body></html>  结果三:  从结果可以看出:    ①第三种方法事件处理程序中this也指向这个元素本身;    ②第三种方法并不会覆盖第一种或第二种方法注册的事件处理程序;实例四:<!DOCTYPE HTML><html><head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title>test</title> <style type="text/css"> #div1{width: 300px; height: 300px; background: red; overflow: hidden;} </style></head><body> <div id="div1" onclick="console.log("html:"); console.log(this);">div1</div> <script type="text/javascript"> var div1 = document.getElementById("div1"); div1.onclick = function(){ console.log("div1.onclick:"); console.log(this); }; div1.attachEvent("onclick", function(){ console.log("div1.attachEvent:"); console.log(this === window); }); </script></body></html>  结果四:  从结果可以看出:    ①第四种方法事件处理程序中this指向全局对象Window;    ②第四种方法也不会覆盖第一种或第二种方法注册的事件处理程序;3.事件处理程序的调用顺序:多个事件处理程序调用规则如下:  ①通过HTML属性注册的处理程序和通过设置对象属性的处理程序一直优先调用;  ②使用addEventListener()注册的处理程序按照它们的注册顺序依次调用;  ③使用attachEvent()注册的处理程序可能按照任何顺序调用,所以代码不应该依赖于调用顺序;

JavaScript中的事件如何进行绑定与解除

本文将分享有关JavaScript事件的绑定与解除,有一定的参考价值,希望对大家有所帮助JavaScript中的事件表示当我们点击某个 HTML 元素时启动一段 JavaScript,从而触发浏览器的行为,我们常常需要用到事件的绑定,接下来将和大家详细分享几种常见的事件绑定方法以及如何解除绑定事件绑定onclick事件指鼠标按下时对象被触发,一个元素只能绑定一个事件当鼠标点击方块时改变它的背景颜色window.onload=function(){var div=document.getElementsByTagName("div")[0];div.onclick=function(){div.style.backgroundColor="pink";console.log(1);}}效果图点击前点击后addEventListener(event, function, useCapture)指向指定元素添加事件句柄,可以添加多个事件,IE9以下不兼容event:指定事件名,以字符串的形式存在function:指事件触发时所执行的函数useCapture:布尔值,说明事件是否在捕获或者冒泡阶段执行,其中true代表事件句柄在捕获阶段执行,false代表事件句柄在冒泡阶段执行,其中false代表默认值 window.onload=function(){ var div=document.getElementsByTagName("div")[0]; div.addEventListener("click",function(){ div.style.backgroundColor="pink"; },false); }//用addEventListener绑定一个click事件,当点击时使背景颜色改变注意:在写事件时注意不要写on,直接写click大多数情况下写falseattachEvent(event, function)一个事件可以绑定多个处理程序,同一个函数也可以绑定多次是IE 独有的event:需要绑定的事件的类型,注意要以on开头function:指事件触发时所执行的函数window.onload=function(){var div=document.getElementsByTagName("div")[0]; div.attachEvent("onclick",function(){ div.style.backgroundColor="pink"; }); }注意:程序的运行一定要在IE浏览器下。解除事件绑定onclick =false/nullonclick事件的解绑通过令它的值为false或者为null解除window.onload=function(){ var div=document.getElementsByTagName("div")[0]; div.onclick=function(){ div.style.backgroundColor="pink"; } div.onclick=null;removeEventListener(event, function, useCapture)用于解除绑定了addEventListener事件,注意在解除绑定时不能直接写function,要将函数写在外部 window.onload=function(){ var div=document.getElementsByTagName("div")[0]; div.addEventListener("click",demo,false); function demo(){ div.style.backgroundColor="pink"; } div.removeEventListener("click",demo,false); }//用addEventListener绑定一个click事件,当点击时使背景颜色改变detachEvent(event, function)用于解除attachEvent事件,注意在解除绑定时不能直接写function,要将函数写在外部 window.onload=function(){ var div=document.getElementsByTagName("div")[0]; div.attachEvent("onclick",demo); function demo(){ div.style.backgroundColor="pink"; } div.detachEvent("onclick",demo); }总结:

javascript事件流是什么?有哪些事件流?

事件流是描述页面接收事件的顺序。具体的有事件冒泡事件捕获DOM事件流。1、事件冒泡又叫IE的事件流,即事件开始时由最具体的元素(文档中嵌套层次最深的那个节点)接收,然后逐级向上传播到较为不具体的节点(文档)。2、事件捕获的思想是不太具体的节点应该更早的接收到事件,而最具体的节点应该在最后接收到节点。事件捕获的用意在于事件到达预定目标之前捕获它。3、DOM2级事件流规定的事件流包括三个阶段:事件捕获阶段、处于目标阶段和冒泡阶段。首先发生的是事件捕获,为截获事件提供了机会。然后是实际的目标接收到事件。最后一个阶段是冒泡阶段,可以在这个阶段对事件作出响应。

编程,JavaScript中的onload无法多次调用,求解决办法

不但onload,所有事件都一样,如果同一个事件你写了多个触发的函数,那么它只会运行一个的。要想实现多次触发,必须使用addEventListener--“添加事件监听”的方法:window.addEventListener("load",函数1,false);window.addEventListener("load",函数2,false);要注意,这两个(或者更多)语句可以放在页面的不同地方(甚至可以是不同的js文件内),当网页加载(onload)时,这些函数就会逐一运行了。但是,上述方法在IE中无效,IE中要用attachEvent,而且用法也不同:window.attachEvent("onload",函数1);window.attachEvent("onload",函数2);

JAVASCRIPT中侦听器有何作用?什么时候用它?addListener的语法格式是什么?还有被动FTP是什么?

事件监听例如获取一个按钮var btn = document.getElementById("btn");btn..addEventListener("click", function () { alert("你点击了按钮") }, false);3个参数第一个 事件触发类型 比如 click mouseover 第二个 触发事件第三个 true or false 表示 是冒泡事件还是捕获事件 一般是false 跟ie统一 采用冒泡事件

javascript 事件监听是什么?

1、事件监听的定义在Javascript中,浏览器一般分为两大类:① 基于IE内核的浏览器(版本号小于9的IE浏览器)② 基于W3C内核的浏览器(版本号大于9的IE浏览器、Firefox、Google等浏览器)1)基本语法:基于IE内核浏览器dom对象.attachEvent(type,callback,capture) :为元素绑定事件监听程序参数说明:type:绑定的事件类型,如onclick、onmouseover、onmouseoutcallback:事件的处理程序,通常是一个匿名函数capture:使用的浏览器模型,冒泡模型与捕获模型,默认IE8以下的浏览器只支持冒泡模型!2)基本语法:基于W3C内核的事件监听dom对象.addEventListener(type,callback) :为W3C内核浏览器绑定事件监听参数说明:type:绑定事件类型,不带"on"前缀,如click,mouseover,mouseoutcallback:事件的处理程序,通常是一个匿名函数3、总结事件监听的区别IE内核的监听方式与W3C内核的监听方式:①方式不同IE内核的浏览器使用attachEvent进行绑定W3C内核的浏览器使用addEventListener进行绑定②参数不同IE内核浏览器,其绑定方式一共有三个参数type,callback,capture(使用的浏览器模型)W3C内核浏览器,其绑定方式一共有二个参数,type和callback③type参数不同IE内核的浏览器,type是需要添加"on"前缀的,如onclickW3C内核浏览器,type是不需要添加"on"前缀的,如click④触发顺序不同IE内核的浏览器,其事件监听是先绑定后触发,后绑定的先触发W3C内核的浏览器,其事件监听是先绑定先触发,后绑定的后触发

js动态加载事件的几种方法总结_javascript技巧

有些时候需要动态加载javascript事件的一些方法往往我们需要在 JS 中动态添加事件,这就涉及到浏览器兼容性问题了,以下谈及的几种方法,我们也常常混合使用。方法一、setAttributevar obj = document.getElementById("obj");obj.setAttribute("onclick", "javascript:alert("测试");");这里利用 setAttribute 指定 onclick 属性,简单,很好理解,但是:IE 不支持,IE 并不是不支持 setAttribute 这个函数,而是不支持用 setAttribute 设置某些属性,包括对象属性、集合属性、事件属性,也就是说用 setAttribute 设置 style、onclick、onmouseover 这些属性在 IE 中是行不通的。方法二、用 attachEvent 和 addEventListenerIE 支持 attachEventobj.attachEvent("onclick", Foo);function Foo(){ alert("测试");}也可写在一起obj.attachEvent("onclick", function(){alert("测试");});其它浏览器支持 addEventListenerobj.addEventListener("click", Foo, false);function Foo(){ alert("测试");}同样也可写在一起obj.addEventListener("click", function(){alert("测试");}, false);注意 attachEvent 的事件带 on,如 onclick,而 addEventListener 不带 on,如 click。顺便说一下 addEventListener 的第三个参数(虽然很少用) useCapture - 如果为 true,则 useCapture 指示用户希望启动捕获。启动捕获后,所有指定类型的事件将在被指派到树中其下面的任何 EventTargets 之前指派给已注册的 EventListener。正在通过树向上 bubbling 的事件将不触发指定的使用捕获的 EventListener。综合应用 代码如下:if (window.attachEvent){ //IE 的事件代码}else{ //其它浏览器的事件代码}方法三、事件 = 函数例:obj.onclick = Foo;这在多个浏览器中均支持,这是属于旧的规范(方法二属于 DOM2 的规范),不过由于使用方便,用的场合也比较多。下面是我的解决办法: 代码如下:function show(){ alert("Hello, world!!!");}obj.setAttribute("onclick",document.all ? eval(function(){show()}) : "javascript:show()");attachEvent方法,为某一事件附加其它的处理事件。(不支持Mozilla系列)addEventListener方法 用于 Mozilla系列举例: document.getElementById("btn").onclick = method1;document.getElementById("btn").onclick = method2;document.getElementById("btn").onclick = method3;如果这样写,那么将会只有medhot3被执行写成这样:var btn1Obj = document.getElementById("btn1"); //object.attachEvent(event,function);btn1Obj.attachEvent("onclick",method1);btn1Obj.attachEvent("onclick",method2);btn1Obj.attachEvent("onclick",method3);执行顺序为method3->method2->method1如果是Mozilla系列,并不支持该方法,需要用到addEventListener var btn1Obj = document.getElementById("btn1");//element.addEventListener(type,listener,useCapture);btn1Obj.addEventListener("click",method1,false);btn1Obj.addEventListener("click",method2,false);btn1Obj.addEventListener("click",method3,false);执行顺序为method1->method2->method3使用实例:1。 代码如下:var el = EDITFORM_DOCUMENT.body; //先取得对象,EDITFORM_DOCUMENT实为一个iframeif (el.addEventListener){ el.addEventListener("click", KindDisableMenu, false);} else if (el.attachEvent){ el.attachEvent("onclick", KindDisableMenu);}2。 代码如下:if (window.addEventListener) { window.addEventListener("load", _uCO, false);} else if (window.attachEvent) { window.attachEvent("onload", _uCO);}

这是JavaScript的一段代码,帮我分析一下用到了什么,具体点,回答老师用的

将json格式的字符串转换为json,然后循环取值

javaScript中this.mainFrame_ex.window.location.search = "?kssj=" + kssj;求助

这里只是一个赋值语句,当然不会变。search是一个可读可写的字符串,声明了当前URL的查询部分,包括前导问号。重载一般用:location.reload()

JavaScript 正则表达式语法中 $ 表示什么意思?

javascript正则表达式/g与/i及/gi的意义 regularexpression=/pattern/[switch] 这个switch就有三种值 g: 全局匹配 i: 忽略大小写 gi: 以上组合 //就像"",中间的_是正则表达式的模式,名面的g是选项,声明匹配的方式,其实好像就是将_换成$,个人意见,供参考。

JavaScript中的数字时钟的显示问题

//如何在网页上显示一个数字时钟,使用JavaScript实现;<html><head><script type="text/javascript">function startTime(){var today=new Date();var h=today.getHours();var m=today.getMinutes();var s=today.getSeconds();// add a zero in front of numbers<10m=checkTime(m);s=checkTime(s);document.getElementById("txt").innerHTML=h+":"+m+":"+s;t=setTimeout("startTime()",500);}function checkTime(i){if (i<10) {i="0" + i;} return i;}</script></head><body onload="startTime()"><div id="txt"></div></body></html>

html javascriptz制作带天,时,分,秒的时间表?

以下是使用 HTML 和 JavaScript 制作一个带有天、时、分、秒的时间表的示例:<!DOCTYPE html><html><head><title>时间表</title><script>// 获取当前日期和时间function getCurrentTime() {var now = new Date();var day = now.getDate();var month = now.getMonth() + 1;var year = now.getFullYear();var hours = now.getHours();var minutes = now.getMinutes();var seconds = now.getSeconds();// 将单个数字的小时、分钟和秒前面添加零hours = padZero(hours);minutes = padZero(minutes);seconds = padZero(seconds);// 更新时间表的文本内容document.getElementById("day").textContent = day;document.getElementById("month").textContent = month;document.getElementById("year").textContent = year;document.getElementById("hours").textContent = hours;document.getElementById("minutes").textContent = minutes;document.getElementById("seconds").textContent = seconds;}// 在数字前面添加零,如果数字小于10function padZero(num) {return (num < 10 ? "0" : "") + num;}// 每秒钟更新一次时间setInterval(getCurrentTime, 1000);</script></head><body onload="getCurrentTime()"><h1>时间表</h1><p>日期: <span id="day"></span>/<span id="month"></span>/<span id="year"></span></p><p>时间: <span id="hours"></span>:<span id="minutes"></span>:<span id="seconds"></span></p></body></html>这段代码创建了一个简单的 HTML 页面,其中包含了一个时间表,显示了当前的日期和时间。JavaScript 部分使用了 Date 对象来获取当前的日期和时间,并通过将其内容更新到页面上的相应元素中来实现动态更新。setInterval 函数用于每秒钟调用一次 getCurrentTime 函数,以保持时间的实时更新。请注意,这里使用了 getElementById 函数来获取页面上的元素,并通过 textContent 属性来设置元素的文本内容。这只是一个简单的示例,实际上在实际项目中,您可能需要更复杂的逻辑来处理日期和时间的格式化、时区的考虑等。

什么是Google V8 JavaScript引擎

想要精准解释百科上有。我就按我觉得有用的说:V8就是chrome浏览器用的js解释引擎,主要是C编写的,js是优秀web应用必不可少的前端脚本语言,而浏览器除了要展示你看到的这些网页内容外还需要保证页面能按开发者希望的方式和用户交互,因此还需要解释并执行js的一种东西,而js引擎就是这个东西,V8呢只是一种代号(名称)而已,比如firefox的js引擎有过tracemonkey、jaegermonkey、spidermonkey等。(javascript->js)

javascript问题 parent.frames[1].location指的是什么

找找有无兄弟关系的页面。

javascript 打开文件夹

发油箱给我

Javascript页面跳转间的常用方法有哪些

Javascript页面跳转间的常用方法一:JS 重载页面,本地刷新,返回上一页 代码如下:返回上一页 重载页面,本地刷新 返回上一页重载页面,本地刷新返回前二页并刷新的JS代码应该怎样写。 代码如下:history.go(-2); location.reload();window.history.go(-1);//返回上一页不刷新 window.location.href = document.referrer;//返回上一页并刷新二:js 方法 代码如下:asp自动返回并刷新的方法: 代码如下:response.Write(““)一般用于向一个页面提交action后返回前一页并刷新!Javascript 返回上一页history.go(-1), 返回两个页面: history.go(-2);history.back().window.history.forward()返回下一页window.history.go(返回第几页,也可以使用访问过的URL)response.Write(“") response.Write("if(!confirm("完成任务?")){history.back();}") “) response.Write(““)向上一页页面跳转:onclick=”window.location.href="list.aspx"”P.S. 小技巧(JS引用JS):Javascript刷新页面的几种方法: 1 history.go(0) 2 location.reload() 3 location=location 4 location.assign(location) 5 document.execCommand(‘Refresh") 6 window.navigate(location) 7 location.replace(location) 8 document.URL=location.href自动刷新页面的方法: 1.页面自动刷新:把如下代码加入区域中 其中20指每隔20秒刷新一次页面.2.页面自动跳转3.页面自动刷新js版function myrefresh() { window.location.reload(); } setTimeout("myrefresh()",1000); //指定1秒刷新一次ASP.NET如何输出刷新父窗口脚本语句 1. this.response.write(““); 2. this.response.write(““); 3. Response.Write(““)JS刷新框架的脚本语句//如何刷新包含该框架的页面用parent.location.reload();//子窗口刷新父窗口self.opener.location.reload();(或刷新 )//如何刷新另一个框架的页面用parent.另一FrameID.location.reload();如果想关闭窗口时刷新或者想开窗时刷新的话,在中调用以下语句即可。开窗时刷新 关闭时刷新window.opener.document.location.reload()三:在ASP中利用JS实现返回上一页并刷新 在ASP中利用JS实现返回上一页并刷新我想是利用ASP开发网站的时候经常使用的。但写法也有几种,但目的都是一样的。 代码如下:javascript刷新父页面的各种方法汇总用iframe、弹出子页面刷新父页面iframeparent.location.reload();弹出子页面window.opener.location.reload();子窗口刷新父窗口self.opener.location.reload();刷新以open()方法打开的窗口window.opener.location.href=window.opener.location.href;刷新以winodw.showModelDialog()方法打开的窗口window.parent.dialogArguments.document.execCommand("Refresh");js页面跳转的问题(跳转到父页面、最外层页面、本页面)js页面跳转:本页面跳转,上一层页面跳转,最外层的页面跳转,下面为大家大家分享下不同页面之家的跳转问题,感兴趣的朋友可以学习下 “window.location.href”、”location.href”是本页面跳转“parent.location.href”是上一层页面跳转“top.location.href”是最外层的页面跳转举例说明:如果A,B,C,D都是jsp,D是C的iframe,C是B的iframe,B是A的iframe,如果D中js这样写“window.location.href”、”location.href”:D页面跳转“parent.location.href”:C页面跳转“top.location.href”:A页面跳转如果D页面中有form的话,: form提交后D页面跳转: form提交后弹出新页面: form提交后C页面跳转: form提交后A页面跳转关于页面刷新,D 页面中这样写:“parent.location.reload();”: C页面刷新 (当然,也可以使用子窗口的 opener 对象来获得父窗口的对象:window.opener.document.location.reload(); )“top.location.reload();”: A页面刷新

几种使用javascript的页面刷新方法

javascript几种页面刷新的方法下面以三个页面分别命名为frame.html、top.html、bottom.html为例来具体说明如何做。 frame.html 由上(top.html)下(bottom.html)两个页面组成,代码如下: 代码如下:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML> <HEAD> <TITLE> frame </TITLE> </HEAD> <frameset rows="50%,50%"> <frame name=top src="top.html"> <frame name=bottom src="bottom.html"> </frameset> </HTML>现在假设top.html (即上面的页面) 有七个button来实现对bottom.html (即下面的页面) 的刷新,可以用以下七种语句,哪个好用自己看着办了。top.html 页面的代码如下: 制代码 代码如下:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML> <HEAD> <TITLE> top.html </TITLE> </HEAD> <BODY> <input type=button value="刷新1" onclick="window.parent.frames[1].location.reload()"><br><input type=button value="刷新2" onclick="window.parent.frames.bottom.location.reload()"><br><input type=button value="刷新3" onclick="window.parent.frames["bottom"].location.reload()"><br><input type=button value="刷新4" onclick="window.parent.frames.item(1).location.reload()"><br><input type=button value="刷新5" onclick="window.parent.frames.item("bottom").location.reload()"><br><input type=button value="刷新6" onclick="window.parent.bottom.location.reload()"><br><input type=button value="刷新7" onclick="window.parent["bottom"].location.reload()"><br></BODY> </HTML>下面是bottom.html页面源代码,为了证明下方页面的确被刷新了,在装载完页面弹出一个对话框。 代码如下:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML> <HEAD> <TITLE> bottom.html </TITLE> </HEAD> <BODY onload="alert("我被加载了!")"> <h1>This is the content in bottom.html.</h1> </BODY> </HTML>解释一下: 代码如下:1.window指代的是当前页面,例如对于此例它指的是top.html页面。 2.parent指的是当前页面的父页面,也就是包含它的框架页面。例如对于此例它指的是framedemo.html。 3.frames是window对象,是一个数组。代表着该框架内所有子页面。 4.item是方法。返回数组里面的元素。 5.如果子页面也是个框架页面,里面还是其它的子页面,那么上面的有些方法可能不行。 附: Javascript刷新页面的几种方法: 1 history.go(0) 2 location.reload() 3 location=location 4 location.assign(location) 5 document.execCommand("Refresh") 6 window.navigate(location) 7 location.replace(location) 8 document.URL=location.href二、自动刷新页面 1.页面自动刷新:把如下代码加入<head>区域中 <meta http-equiv="refresh" content="20"> 其中20指每隔20秒刷新一次页面. 2.页面自动跳转:把如下代码加入<head>区域中 <meta http-equiv="refresh" content="20;url=http://www.gxlcms.com"> 其中20指隔20秒后跳转到http://www.gxlcms.com页面 3.页面自动刷新js版 <script language="JavaScript">function myrefresh() { window.location.reload(); } setTimeout("myrefresh()",1000); //指定1秒刷新一次 </script>三、java在写Servler,Action等程序时,要操作返回页面的话(如谈出了窗口,操作完成以后,关闭当前页面,刷新父页面) 代码如下:1 PrintWriter out = response.getWriter(); 2 out.write("<script type="text/javascript">"); 3 ////子窗口刷新父窗口 4 out.write("self.opener.location.reload();"); 5 //关闭窗口 6 out.write("window.opener=null;"); 7 out.write("window.close();"); 8 out.write("</script>");四、JS刷新框架的脚本语句1.如何刷新包含该框架的页面用 代码如下:<script language=JavaScript> parent.location.reload(); </script>2.子窗口刷新父窗口 代码如下:<script language=JavaScript> self.opener.location.reload(); </script>3.如何刷新另一个框架的页面用 (上面的实例以说明了) 代码如下:语句1. window.parent.frames[1].location.reload(); 语句2. window.parent.frames.bottom.location.reload(); 语句3. window.parent.frames["bottom"].location.reload(); 语句4. window.parent.frames.item(1).location.reload(); 语句5. window.parent.frames.item("bottom").location.reload(); 语句6. window.parent.bottom.location.reload(); 语句7. window.parent["bottom"].location.reload();4.如果想关闭窗口时刷新或者想开窗时刷新的话,在<body>中调用以下语句即可。<body onload="opener.location.reload()"> 开窗时刷新 <body onUnload="opener.location.reload()"> 关闭时刷新 代码如下:<script language="javascript"> window.opener.document.location.reload() </script> JavaScript 实现页面跳转的几种方法:window.location.href="new.jsp?msg="hello";self.location="new.jsp?pam="omg";window.navigate("new.jsp") ;top.location="show.jsp";

javascript显示错误 对象不支持此属性或方法

是哦,你这都没有<form></form>标签,怎么会有form1呢

javascript原型,原型链 有什么特点

这个解释的很不错,你可以看看http://www.cnblogs.com/FlyingCat/archive/2009/09/21/1570656.html

JavaScript里面的prototype是什么意思?

prototype是原型的意思,也就是JS对象的原型,一般用来扩展原型的时候用.prototype是一个属性,所有的函数都有,这个属性引用了一个对象.prototype对象是实现面向对象的一个重要机制.每个函数都是一个对象,它们对应的类就是function,每个函数对象都具有一个子对象prototype,prototype表示了该函数的原型.

javascript的onmouseover无效

onmouseover=“alert("nide ");""

javascript中onmouseover事件描述错误的是()

javascript中onmouseover事件描述错误的是() A.单击事件B.双击事件C.鼠标悬停事件D.鼠标离开事件正确答案:C

javascript给一个html标签添加onmouseover事件。

你不如直接说你想实现什么功能

javascript 修改body样式

document.getElementsByTagName("body")[0].setAttribute("style","background-color:white")

怎样用javascript逐渐增大和减小body字体的大小

你试试 document.body.style.fontSize=document.body.style.fontSize+1 document.body.style.fontSize=document.body.style.fontSize-1document.body.style.color = "#000000";

javascript如何获取里的值?

1、获取URL;window.document.URL。2、将得到的URL分割为数组 再获取第一个数组。3、封装方法。4、代码:function lond_urlvalue(){ var url=window.document.URL;return url.split("=")[1]; //id }。延展阅读:Javascript,一种高级编程语言,通过解释执行,是一门动态类型,面向对象(基于原型)的直译语言;是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言;同时也是一种广泛用于客户端Web开发的脚本语言,常用来给HTML网页添加动态功能,比如响应用户的各种操作。它最初由网景公司(Netscape)的Brendan Eich设计,是一种动态、弱类型、基于原型的语言,内置支持类。

有什么好的学习javascript的网站

1.MDN(Mozilla Developer Network):MDN 是一个开放的 Web 技术文档库,其中包含了 JavaScript 语言的完整文档和教程。它包含了从初学者到高级开发人员所需的所有信息。 2.W3Schools:W3Schools 是一个非常受欢迎的网站,提供了大量的 Web 开发教程和实例。它的 JavaScript 教程包括了基础语法、DOM 操作、事件处理、AJAX、JSON 等方面的内容。 3.Codecademy:Codecademy 是一个在线编程学习平台,提供了大量的互动式课程,包括 JavaScript。它的课程非常适合初学者,涵盖了从基础到高级的内容。 4.freeCodeCamp:freeCodeCamp 是一个非营利性组织,提供了大量的编程课程和项目。它的 JavaScript 课程包括了 ES6、函数、面向对象编程等方面的内容。 5.YouTube:YouTube 上有很多优秀的 JavaScript 教程视频,包括入门教程、实战项目、框架教程等。其中一些最受欢迎的频道包括 Traversy Media、The Net Ninja、Academind 等。 6.JavaScript.info:这是一个完整的 JavaScript 教程,旨在为初学者提供深入的学习体验,逐步学习语言特性,从而能够掌握更高级的主题。
 首页 上一页  1 2 3 4 5 6 7  下一页  尾页