随笔分类 -  javascript

单向进度条的实现。
摘要:通过setInterval来实现宽度百分比的递加。最后记得要删除interval。 阅读全文

posted @ 2012-11-26 15:21 TonyCoolZhu 阅读(216) 评论(0) 推荐(0) 编辑

iphone手机上的click和touch事件
摘要:在iphone手机上绑定click事件时,当你触发点击事件时,你绑定的click事件的DOM节点,会自动被一块浮层选中。所以如果使用事件委托来做事件绑定会造成很差的用户体验。使用touchstart来实现点击就不会有这个问题。但是touchstart事件的触发机制和click不同。在你滑动页面的时候,如果触碰到了绑定时间的节点就会产生相关的事件。具体取舍看实际情况。 阅读全文

posted @ 2012-11-21 14:43 TonyCoolZhu 阅读(3292) 评论(0) 推荐(0) 编辑

递归要记得返回
摘要:我定义了一个方法来寻找当前节点的父节点为LI的方法,然后打印出这个节点的类名。刚开始我写的方法是:function getLi(src) { if(src.nodeName === 'LI') return src; else getLi(src.parentNode); }src = getLi(src)这样的话返回结果一直报错。后来我才发现我在else中没有返回那个递归的数据。修改后为function getLi(src) { if(src.nodeName === 'LI') return src; else return getLi(src... 阅读全文

posted @ 2012-11-15 17:24 TonyCoolZhu 阅读(312) 评论(0) 推荐(0) 编辑

开发富文本编辑器的一些体会
摘要:最近两周一直都在开发后台wcms系统的文本编辑器。在开发的过程中,感觉到开发富文本编辑器还是能学到不少东西的,接下来我会说说我个人是怎么开发的吧。因为我的编辑器要兼容自己的后台,所以修改了一些浏览器自身的方法。开发富文本编辑器主要用到了document.execCommand( command, showUI, value )这个方法。command:要执行的命令的名称 showUI:boolean是否向用户显示命令特定的对话框或消息框 value类型:string要使用该命令分配的值。关于这个方法更加详细的说明可以google进行搜索。我们都知道在textarea下我们可以直接输入文本,但是 阅读全文

posted @ 2012-08-31 16:25 TonyCoolZhu 阅读(5220) 评论(1) 推荐(0) 编辑

基于geolocation来获取经纬度地址
摘要:以前如果要获取互联网用户所在地都是根据用户的IP地址来获取地理位置,这样获取到的数据和真实数据有很大的偏差。为了获取更加精确的位置,可以使用了html5的geolocation来获取经纬度,然后再获取所在地理位置,如何获取,我在下面会说到。先说下基本概念。 Geolocation在的navigator 对象中,我们可以通过 navigator.geolocation 来使用它。不支持 geolocation 的浏览器并不包含这一对象,那么可以通过下面的代码来做能力检测,对不同的浏览器做不同的处理。在访问 geolocation 对象时,即调用 geolocation 下面的方法时,浏览器... 阅读全文

posted @ 2012-08-30 12:54 TonyCoolZhu 阅读(11938) 评论(0) 推荐(1) 编辑

对jquery的conflict方法的解读
摘要:源码:noConflict: function( deep ) { if ( window.$ === jQuery ) { window.$ = _$; } if ( deep && window.jQuery === jQuery ) { window.jQuery = _jQuery; } return jQuery;},引入jQuery类库后,闭包外面的window.$与window.jQuery都储存着一个函数,它是用来生成jQuery对象或在domReady后执行里面的函数的。回顾我上一篇文章,那里有写什么时候给它们进行赋值... 阅读全文

posted @ 2012-08-09 13:56 TonyCoolZhu 阅读(764) 评论(0) 推荐(0) 编辑

使用jquery制作动态加载型菜单
摘要:为了提升后台管理系统的加载。决定对后台的菜单进行动态加载。具体实现方式和我上一篇文章差不多。不过我把js代码进行了封装。css:.menu {position:relative;} .menu ul {position:absolute; margin:0; padding:0; list-style:none; white-space:nowrap; background:#f1f8fe; border:1px solid #fff; padding:10px 0;-o-border-radius: 8px;-ms-border-radius: 8px; -moz-border-ra... 阅读全文

posted @ 2012-08-01 16:25 TonyCoolZhu 阅读(4683) 评论(1) 推荐(1) 编辑

基于jquery来制作动态加载树
摘要:最近更新的后台树节点的加载方式。因为以前用的是jquery-treeview插件。 但是上网查了下资料,发现用它来实现树节点的动态加载还是挺麻烦的。于是我自己写了个动态加载的方式。下面贴代码。css样式:.treeview li{background: url(static/images/treeview-default-line0.gif) 0 0 no-repeat; margin: 0; padding: 4px 0pt 4px 16px; margin-left:5px;}.treeview li img{ margin-right:5px; margin-left:5px;}.h.. 阅读全文

posted @ 2012-08-01 15:10 TonyCoolZhu 阅读(2805) 评论(0) 推荐(0) 编辑

关于__proto__和prototype的一些理解
摘要:var Person = function(name) { this.name = name;}var p = new Person();new操作符的操作是var p = {}p.__proto__ = Person.prototypePerson.call(p)var p={}; 也就是说,初始化一个对象p。p.__proto__ = Person.prototype;Person.call(p);也就是说构造p,也可以称之为初始化p。关键在于第二步,我们来证明一下:var Person = function() {}var p = new Person();alert(p.__p... 阅读全文

posted @ 2012-07-20 14:26 TonyCoolZhu 阅读(29852) 评论(23) 推荐(21) 编辑

工作记录
摘要:今天在做手机桌面标签的时候在给iphone桌面添加icon的时候因为没有加apple-touch-icon,所以添加的标签特别难看。添加那个link可以设置icon的头像。在做统计的时候需要给统计后台发送请求,但是又存在跨域的问题。那应该怎么解决这个问题呢,解决的方法就是新建<script>或者<img>标签。在标签内添加src,那个src写的就是需要访问的地址。这样就可以解决跨域的难题啦。今天还犯了一个很2的问题。就是content.replace("", "")之后要重新给content赋值,不然不会生效。还有就是object 阅读全文

posted @ 2012-06-27 22:52 TonyCoolZhu 阅读(197) 评论(0) 推荐(0) 编辑

javascript类lightbox效果
摘要:最近因为需要在手机网站开发一个图片放大缩小的效果。本来想用lightbox的框架代码的,但是代码实在太多,就自己写了一个。 主要是用到了样式中的透明度,还有div居中显示。 layout的具体样式 <style type="text/css"> .lay{position:absolute;z-index:998;margin:0 auto;top:0;height:100%;width:100%;background:rgba(0, 0, 0, 0.3);} </style>在对多个图片绑定事件的时候遇到一个问题。就是我先用循环来判断img元素的个 阅读全文

posted @ 2012-06-20 12:47 TonyCoolZhu 阅读(250) 评论(0) 推荐(0) 编辑

页面编辑器开发
摘要:本来昨天下午已经把这个页面编辑器做完了的。昨晚就给文件夹压缩了一下,今天早晨起来发现文件夹里的东西全没了。打包的压缩文件也是空的。瞬间感觉脑袋晕晕的,昨天的工作成果竟然没有了。于是下定决心,要给自己建一个版本库,把代码传到服务器上面去。以免悲剧重演。 其实开发编辑器也没什么好说的,我写这篇博客主要是记录我开发的过程,和在开发过程中遇到的难点。 除了textarea外,想在div中进行编辑需要使用contentEditable = "true"。如果是在iframe下进行编辑,需要用designMode="on"。我做的是使用iframe。 页面编辑器用到 阅读全文

posted @ 2012-06-20 11:05 TonyCoolZhu 阅读(257) 评论(0) 推荐(0) 编辑

jquery实现水平垂直居中
摘要:在建立网页布局的时候,我们经常会面临一个问题,就是让一个div实现水平和垂直居中,虽然好几种方式实现,但是今天介绍时我最喜欢的方法,通过css和jQuery实现。1、通过css实现水平居中:.className{margin:0auto;width:200px;height:200px;}2、通过css实现水平居中和垂直居中通过css创建一个水平居中和垂直居中的div是一件比较麻烦的事情,您必须事先知道另外一个div的尺寸:.className{width:300px;height:200px;position:absolute;left:50%;top:50%;margin:-100px00 阅读全文

posted @ 2012-06-13 11:41 TonyCoolZhu 阅读(589) 评论(0) 推荐(0) 编辑

jquery实现图片的滑动和自动定时滑动
摘要:前一段时间用css3实现了图片的滑动。使用了css3的transform属性。但是IE浏览器不支持这个属性,最近需要做的图片滑动要兼容浏览器,所以为了兼容浏览器,使用了jquery来实现。具体代码:js:var Class = { create: function() { return function() { //返回一个function对象 this.initialize.apply(this, arguments); } }}var Scroll = Class.create();Scroll.proto... 阅读全文

posted @ 2012-05-29 14:06 TonyCoolZhu 阅读(3339) 评论(0) 推荐(2) 编辑

关于javascript的sort()函数
摘要:今天遇见一个问题。 var arr = [3,1,16,34,7,8]; arr.sort(); 返回结果是[1,16,3,34,7,8]。和我想要取得的结果不同。 看了下接口说明。 arrayObject.sort(sortby). sortby必须是函数。 如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。要实现这一点,首先应把数组的元素都转换成字符串(如有必要),以便进行比较。 如果想按照其他标准进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具... 阅读全文

posted @ 2012-05-21 15:12 TonyCoolZhu 阅读(427) 评论(1) 推荐(0) 编辑

javascript的词法作用域(转)
摘要:大家应该写过下面类似的代码吧,其实这里我想要表达的是有时候一个方法定义的地方和使用的地方会相隔十万八千里,那方法执行时,它能访问哪些变量,不能访问哪些变量,这个怎么判断呢?这个就是我们这次需要分析的问题——词法作用域var classA = function(){ this.prop1 = 1;}classA.prototype.func1 = function(){ var that = this, var1 = 2; function a(){ return function(){ alert(var1); ... 阅读全文

posted @ 2012-05-18 11:40 TonyCoolZhu 阅读(453) 评论(2) 推荐(0) 编辑

document.domain 跨域问题【转】
摘要:document.domain用来得到当前网页的域名。比如在地址栏里输入:javascript:alert(document.domain); //www.forjj.com我们也可以给document.domain属性赋值,不过是有限制的,你只能赋成当前的域名或者基础域名。比如:javascript:alert(document.domain = "forjj.com"); //forjj.comjavascript:alert(document.domain = "www.forjj.com"); //www.forjj.com上面的赋值都是成功的, 阅读全文

posted @ 2012-05-18 09:58 TonyCoolZhu 阅读(236) 评论(0) 推荐(0) 编辑

导航