摘要: 写在前面:由于自身英语水平有限,所以翻译不敢保证能让所有人都理解,如果您在阅读中发现什么疑问,请务必及时查看官方API,以免误导。另外,有部分是未经翻译的,一方面是因为找不到合适的中文描述之,还有就是有的地方看英文更易懂~续前面三篇,本篇关于Browser对象:提供一些检测浏览器版本、运行平台的方法//Object: Browser//附加到Browser对象上的一些浏览器属性以检测浏览器及运行平台//Browser.FeaturesBrowser.Features.xpath - (boolean) 如果浏览器支持通过XPath查询DOM时返回trueBrowser.Features.air阅读全文
posted @ 2011-04-05 23:46 chemdemo 阅读(127) 评论(0)  编辑
摘要: 写在前面:由于自身英语水平有限,所以翻译不敢保证能让所有人都理解,如果您在阅读中发现什么疑问,请务必及时查看官方API,以免误导。另外,有部分是未经翻译的,一方面是因为找不到合适的中文描述之,还有就是有的地方看英文更易懂~续上一篇MooTools1.3.1 API(Core)学习及试译(一)——Types(一)这一篇继续Types,包含Number、Function、Object、Event归纳一下Number、Function、Object、Event方法如下:NumberNumber.from:把传入的参数转换为数值,返回null或数值Number.random:返回一个介于传入参数之间的阅读全文
posted @ 2011-04-05 23:34 chemdemo 阅读(117) 评论(0)  编辑
摘要: 写在前面:由于自身英语水平有限,所以翻译不敢保证能让所有人都理解,如果您在阅读中发现什么疑问,请务必及时查看官方API,以免误导。另外,有部分是未经翻译的,一方面是因为找不到合适的中文描述之,还有就是有的地方看英文更易懂~这一篇是Types第一篇——Array、String,即MooTools1.3.1里对js原生类型的扩展归纳以下,Array、String方法如下:ArrayArray.each:用于循环遍历数组或伪数组(如getElementsByTagName返回的结果或arguments)Array.clone:返回传入数组的一个副本Array.from:转换传入的(已经定义过且不是数阅读全文
posted @ 2011-04-05 22:20 chemdemo 阅读(138) 评论(0)  编辑
摘要: 写在前面:由于自身英语水平有限,所以翻译不敢保证能让所有人都理解,如果您在阅读中发现什么疑问,请务必及时查看官方API,以免误导。另外,有部分是未经翻译的,一方面是因为找不到合适的中文描述之,还有就是有的地方看英文更易懂~这是MooTools1.3.1API(Core)第一部分——Core,是MooTools中使用的各类方法//Type: Core//包括MooTools中使用的各类方法Function: typeOf返回一个对象的类型语法:typeOf(obj);参数obj - (object) 内嵌的对象返回:'element' - (string) 如果是DOM的元素节点阅读全文
posted @ 2011-04-05 21:42 chemdemo 阅读(349) 评论(0)  编辑
摘要: 以前也用过css3做过一些效果,如圆角阴影什么的,最近详细的学了下,再一次感受到了它的强大。但在IE横行的今天,我们也最多只能在没事干的时候玩玩css3,yy一番而已~好了,不多说,进入正题(首先申明,既然是css3,兼容性我想大概不必了,所有效果仅局限于FF4.0和chrome,其他没有做测试~)。1、一个太极图,用到的主要是css2的定位和css3的圆角。在网上看到一个别人写的,用了6个div,我这里是另外一种思路,用了3个div(还听有人说一个div可以搞定,这个我愣是没想到,如果有想到的童鞋麻烦赐教一下哈^_^)。结构:View Code 1 <div class="t阅读全文
posted @ 2011-03-28 00:19 chemdemo 阅读(513) 评论(5) 编辑
摘要: 花了一天时间看完《无懈可击的web设计》(第2版),薄薄的一本书,后来看了下价格,竟然要55大洋,当时就懵了,就这内容,顶多10块钱算了(当然,书是彩印的,工本费可能贵点)。没讲什么太新鲜的技巧,当然也有可能是书中的一些思想偶还领悟不到,唯一感兴趣的是讲到的灵活布局网页那里,记得有一次笔试的时候碰到过类似的问题,就是页面宽度、字体自适应浏览器窗口的问题,当时没注意,简单的用了百分比宽度,现在想想,百分比宽度可能问题更大,对于里面的元素宽度是很难把握的。 好了,废话不说,切入正题。我们的目标也很简单,就是当用户改变文字大小时(比如按住Ctrl+鼠标滚轮上下滚动),字体能够随着变化而布局不被破坏.阅读全文
posted @ 2011-03-16 23:43 chemdemo 阅读(189) 评论(0) 编辑
摘要: 看过别人的思路,自己也写了一个。原理就是准备10张图,图片名分别和图上的数字对应,时间的格式是xx:xx:xx,分别有六个位置的图片需要动态修改crs属性,每个位置上的数字是n(具体由当前时间决定),这个位置上的图片即为n.gif,就这样。请先查看Demo然后是结构:View Code 1 <p> 2 当前时间为: 3 <span id="clock"> 4 <img class="num" src="images/0.gif" /> 5 <img class="num" 阅读全文
posted @ 2011-03-10 23:48 chemdemo 阅读(419) 评论(0) 编辑
摘要: 技术上没什么难的,就是定义一个隐藏的box,当触发上下文事件时显示它,当单击body任意处时又隐藏它。样式效果比较粗糙,请见谅~~~Demo在这里结构:View Code 1 <div id="wrap"> 2 <ul id="menu"> 3 <li><a href="">撤销</a></li> 4 <li><a href="">重做</a></li> 5 <li><a hre阅读全文
posted @ 2011-03-10 23:01 chemdemo 阅读(104) 评论(0) 编辑
摘要: 没看之前,觉得会挺难的,今天看了别人的思路,于是自己摸索着也整了一个出来。感觉这东西也不太实用,不过把它挂在博客上什么的装饰一下还可以,但主要是练习js,提高自己的编程能力啦~。写的时候,画张图,边分析边写,会容易些,另外就是一些初中数学知识的运用啦......请先查看Demo源码部分:html:<div id="googleEye"> <h1>Google eye!</h1> <div id="leftEye"><img src="images/pupil.gif" />&阅读全文
posted @ 2011-03-08 23:54 chemdemo 阅读(238) 评论(0) 编辑
摘要: 结构:View Code 1 <div class="demo"> 2 <ul id="tab_t1" class="hd"> 3 <li>新闻</li> 4 <li>视频</li> 5 <li>图片</li> 6 </ul> 7 <ul id="tab_c1" class="bd"> 8 <li class="news"> 9 我正要推开车门,阅读全文
posted @ 2011-03-07 20:30 chemdemo 阅读(241) 评论(0) 编辑
摘要: 3月6日修改:感谢园友“猪如此累”和“平平”的建议,现已修正图片滚到最后一张时跳到第一张的问题,改为滚到第5张时倒序返回。谢谢大家的意见,今晚改的时候有不少收获~~~! 以前写js的时候,可能所需的功能也比较简单,所以一直使用常规方法(面向过程),有的时候写到后面都不知道自己都写了写什么,虽然有时候效果能勉强实现,可是一看code就惨不忍睹。今天算是真正领教到了OPP的强大,代码易读、可移植性强......等等特点,可就是在实现的过程中那叫一个痛苦(至少偶现在的水平来说是的),真正写code没用多少时间,大部分的时间都在想,这让我联想到了前几天投简历面试时面试官和我说的那样,他当时就说写js重阅读全文
posted @ 2011-03-04 19:36 chemdemo 阅读(4564) 评论(16) 编辑
摘要: 从网上看了一些关于js闭包的文章,现在总算是明白之前遇到过的一系列问题,比如:function a() { var nodes = [1,2,3,4,5]; var arr = []; for(var i=0; i<nodes.length; i++) { return function() { arr[i] = i; } } return arr;}var b = a();alert(b);比如这段看似没什么语法问题的代码,为啥返回结果会让人如此的蛋疼呢?我想如果不理解或不知道闭包的话,这个问题还真回答不了,其中闭包涉及到了关于执行环境、作用域链等js中比较难理解且又很重要的概念,关于阅读全文
posted @ 2011-03-04 17:38 chemdemo 阅读(109) 评论(0) 编辑
摘要: 凡是写js或者进行前端开发的人员对firebug都不陌生,firebug在js的调试中功不可没。总的说来,用firebug调试js包括以下几个部分:1、检查常规错误:这个就是运行js之后,如果有错误的话在ff(或者在使用firebug lite的其他浏览器)右下角就会有相应的提示,最常见的就是一个表示错误的“X”图标,具体就不赘述的,大家都懂;2、完善的log功能:就是创建了一个console的对象(window.console),它有一些强大的方法帮助我们调试js,详细见下文;3、控制台的命令行功能:打开firebug的“控制台”面板,在最低端“>>>”符号之后即可输入相应阅读全文
posted @ 2011-03-01 23:48 chemdemo 阅读(530) 评论(0) 编辑
摘要: View Code //设置一个cookie//Set-Cookie: name=chemdemo; domain=.demo.com; path = /;secure//cookie包括://Cookie名称,Cookie名称必须使用只能用在URL中的字符,一般用字母及数字//Cookie值,Cookie值同样也只能使用可以用在URL中的字符,一般需要在设置Cookie值时对其使用encodeURI或者(encodeURIComponent()方法)方法进行转义//Expires,过期日期,一个GMT格式的时间,当过了这个日期之后,浏览器就会将这个Cookie删除掉,当不设置这个的时候,Co阅读全文
posted @ 2011-03-01 00:21 chemdemo 阅读(162) 评论(1) 编辑
摘要: 没什么技术难度,主要是Array对象的push()和shift()方法的调用。一般的实现方法,即直接分别在id为start和stop的button上添加onclick事件,然后执行相应的函数:html:<div id="test">这里是滚动的文字!</div><p class="btns"><button type="button" id="start">开始</button><button type="button" id=&阅读全文
posted @ 2011-02-28 00:02 chemdemo 阅读(348) 评论(0) 编辑
摘要: 用到的HTML源码:<fieldset> <legend>这是一个表单</legend> <form action="#" method="post" id="form"> <p><label for="mail">邮箱:</label><input type="text" name="mail" id="mail" /></p> <p>阅读全文
posted @ 2011-02-26 17:12 chemdemo 阅读(90) 评论(0) 编辑
摘要: View Code //自动切换焦点(function() { function tabForward(event) {//前一个文本框输入字符达到最大时,自动切换焦点到下一个文本框 event = EventUtil.getEvent(event); var target = EventUtil.getTarget(event); if(target.value.length == target.maxLength) { var form = target.form;//取得目标文本框所属的form for(var i=0, len=form.elements.length; i<le阅读全文
posted @ 2011-02-26 17:12 chemdemo 阅读(65) 评论(0) 编辑
摘要: View Code //专有事件//上下文菜单事件EventUtil.addHandler(window, "load", function(event) { var div = document.getElementById("myDiv"); EventUtil.addHandler(div, "contextmenu", function(event) {//Windows中,单击右键触发contextmenu事件,Mac中“Ctrl+单击”触发 var event = EventUtil.getEvent(event); Ev阅读全文
posted @ 2011-02-26 17:06 chemdemo 阅读(92) 评论(0) 编辑
摘要: View Code //HTML事件//var isSupport = document.implementation.hasFeature("HTMLEvents", "2.0");//确定浏览器是否支持DOM规定的HTML事件//alert(isSupport);//除IE外,都返回true(以非标准方式支持这些事件的浏览器会返回false)var EventUtil = { addHandler: function(element, type, Handler) {//添加事件处理程序 if(element.addEventListener) { 阅读全文
posted @ 2011-02-26 17:05 chemdemo 阅读(158) 评论(0) 编辑
摘要: View Code var btn = document.getElementById("btn");var link = document.getElementById("link");var textbox = document.getElementById("myText");//跨浏览器的事件处理程序var Handler = function() { alert("Hello!");}var EventUnit = { addHandler: function(element, type, Handler阅读全文
posted @ 2011-02-26 17:04 chemdemo 阅读(94) 评论(0) 编辑