Tag Archives: javascript

JS jscript做小数乘法运算出现浮点错误的解决办法

在Javascript里计算小数乘法,容易出现浮点错误,例如: 12345<script> document.write (1.1*1.3); document.write ("<br>"); document.write (1.2*1.1); </script> 输出结果: 121.4300000000000001 1.32 解决问题的思路就是,先把因数放大为整数,最后再除以相应的倍数,这样就能得到正确的结果了。解决办法如下: 1、 在算式中解决 123<script> alert(1.1*(1.3*10)/10); </script> 2、添加到Number的原型方法里 123456789101112131415161718<script> Number.prototype.rate=function(){ var oStr=this.toString(); if(oStr.indexOf(".")==-1) return 1; else return Math.pow(10,parseInt(oStr.length-oStr.indexOf(".")-1)); } function tran(){ args=tran.arguments; var temp=1; for(i=0;i < args.length;i++) temp*=args[ i … Continue reading

Posted in javascript | Tagged , , , | 1 Comment

正则(JS)re=new RegExp(“^\\d*$”);与re=/^\d*$/;之间区别?

以下代码结果为:FALSE,TRUE,TRUE , 结果中为什么第一个为FALSE呢? 123456789101112131415161718192021222324<form name=form1> 字符串:<input name=”t1″ value=”123456″> 模式:/<input name=”t2″ value=”^\d*$”>/ </form> <script language=javascript> function c1() { re=new RegExp(“^\d*$”); alert(re.test(“123456″)); } function c2(form) { re=new RegExp(form.t2.value); alert(re.test(form.t1.value)); } function c3() { re=/^\d*$/; alert(re.test(“123456″)); } c1(); c2(document.form1); c3(); </script> 第一个应为 re=new … Continue reading

Posted in javascript | Tagged , , , | Leave a comment

Javascript跨域读取数据的新突破!

首先一点,这里的跨域不是类似 aaa.test.com 和 bbb.test.com的二级域名跨域,这种跨域的问题好像有很多人研究过了,而且也实现了。我这里说的跨域是像www.aaa.com和www.bbb.com这样的跨域。 再说一下我研究的这个跨域所要实现的功能吧,我有自己的域名www.aaa.com,我的域名下有一个图片列表页面,这个页面需要在其他域名,例如www.bbb.com的页面上显示,说到这里,可能有些朋友会说,提供一段代码,在www.bbb.com上iframe一下,不就结了吗,也牵扯不到跨域的问题,但是有一点,如果是ifame的方式在bbb.com上显示的话,这个iframe窗体的高度不是能够随着我的图片页面的高度变化的,也就是说,如果我提供的图片页面很长,那么就会在bbb.com的页面上显示滚动条,这样的话,页面会变得很难看,而这是我所希望的。 好了,说一下我的实现方式,我采用JS直接创建层的方式在bbb.com的show.html页面上直接创建我所需要的数据容器层, <div id=”Data-Container”></div> 然后再把获取数据的链接get.asp附加到页面上<head>元素里面,利用OBJ.appendChild(obj), <head> <script src=”http://www.aaa.com/…/get.asp” id=”Data-Handler”></script> </head> 在链接页面获取到数据 var content = ‘this is test content’; 以后, 在该页面的底部执行预先定义好的赋值函数 function SetData(){ document.getElementById(‘Data-Container’).innerHTML = content; } 这样,原本在aaa.com域名下的数据就巧妙的显示到了bbb.com域名下的页面里,关键一点是,层Data-Container的高度会随着获取到数据的大小而自动调整大小,这样,show.html的高度也会自动调整了,就不会出现难看的上下滚动条了。 当然,这只是一个简单的工作原理,其中还有好多需要注意的地方,比如更复杂的回传参数,更新数据等,剩下的下次再写吧。

Posted in javascript | Tagged , , , , | 1 Comment

javascript用DOM解释XML[转]

//加载文档 //doc.load(“b.xml”); //创建文件头 var p = doc.createProcessingInstruction(“xml”,”version=’1.0′ encoding=’gb2312′”); //添加文件头 doc.appendChild(p); //用于直接加载时获得根接点 //var root = doc.documentElement; //两种方式创建根接点 // var root = doc.createElement(“students”); var root = doc.createNode(1,”students”,”"); //创建子接点 var n = doc.createNode(1,”ttyp”,”"); //指定子接点文本 //n.text = ” this is a test”; //创建孙接点 var … Continue reading

Posted in PHP, javascript | Tagged , , , | Leave a comment

用javascript操作xml[转]

我认为这篇文章很有用! ============================================ 1.xml文件如下: <?xml version=”1.0″ encoding=”UTF-8″?> <zip> <city> mycity</city> <state>mystate</state> </zip> 2.读此xml的javascript例子:

Posted in javascript | Tagged , | Leave a comment

如何让网页Iframe自适应高度和宽度

以前用过的,不过这次想用,整了半天才整出来,费劲啊,还是写下来吧. 首先,你需要在页面里写上iframe,然后定义ID, 像这样: 1<IFRAME id=”框架ID名” name=”left” frameBorder=0 scrolling=no src=”XXX.asp” width=”100%”></IFRAME> 然后在XXX.asp页面的任何一个位置,最好是尾部,写上如下代码: 1234<script> parent.document.all(“框架ID 名”).style.height=document.body.scrollHeight; parent.document.all(“框架 ID名”).style.width=document.body.scrollWidth; </script> 好了,简单吧,就这么几句.你试试,我在IE6,IE7下测试正常.

Posted in javascript | Tagged , | Leave a comment