十二月
18

javascript节点拖动如何避免影响某些节点对象的默认行为

javascript节点拖动如何避免影响某些节点对象的默认行为
使用javascript开发可拖动组件时,往往需要对鼠标事件进行阻止默认行为操作。对于普通的节点对象,这个一般没什么问题(没有选择文字复制粘贴等需求),但是如果被拖动对象里包含了一些input、select等对象时,如果从一而终(mousestart ,mousemove,mouseend, click)全部preventDefault默认行为,则会使这些节点无法响应用户操作,比如聚焦input输入或者改变select的值。某些特殊情况下的需求(比如拖动是纵向单方向的,而另一方向横向上则需要可以用鼠标选
继续阅读→ 本文标签: , , ,

七月
27

javaScript 操作COOKIE

javaScript 操作COOKIE
COOKIE,不是说的曲奇饼,吃货走开! 最近用到了在前端需要使用javascript对cookie进行操作,本来想找个现成的代码来用,无奈搜了半天没有找到。 于是自己写了个,也随手分享出来,凑个博客更新。。。。。 1: var COOKIE=(function(){ 2: var cookie=document.cookie||'', 3: subs=cookie.split(';'), 4: cks={}, 5: trim=function(str){ 6: return str.replace(/^\s+|\s+$/g,''); 7: }, 8: getDateString=function(offset){ 9: var date=new Date(); 10:
继续阅读→ 本文标签: , , ,

四月
09

TouchSliderBox 1.0 –容器宽度可变的幻灯

TouchSliderBox 1.0 –容器宽度可变的幻灯
之前写过一个《TouchSlider 1.0 – 兼容触摸屏手机与PC的幻灯片》,那么这个TouchSliderBox和之前的TouchSlider有什么区别呢? TouchSlider是支持幻灯宽度自适应的,也就是支持Responsive Layout(响应式布局)设计的页面上的slider。而TouchSliderBox其实也是支持响应式布局页面的,只不过每个幻灯的宽度是固定的,变化的是包围幻灯片的容器的宽度。其实差别就是TouchSlider你只能一次看到一张幻灯,而TouchSliderBox则随着幻灯容器宽度的不同,你可能同时可以看到多个幻灯
继续阅读→ 本文标签: , , , ,

四月
01

TouchScroll 1.0 – 统一视觉样式的容器滚动解决方案

TouchScroll 1.0 – 统一视觉样式的容器滚动解决方案
大概三个月之前,我发布了一个JS组件,《 TouchSlider 1.0 – 兼容触摸屏手机与PC的幻灯片 》。后来陆续在项目中都有用到,觉自己得还是很方便的。 今天,我又带来了自己空余时间写的另一个组件,TouchScroll。它最大程度上模拟了ios上的默认UI组件的滚动条效果。 为什么开发这个东西 其实很大一部分原因是自己想通过写这么一个东西来更好地熟悉PC和触屏手机的JS开发方案中的差别和特点。当然还有一个原因当然就是有可能项目中会用到这个,例如,在
继续阅读→ 本文标签: , , ,

一月
11

TouchSlider 1.0 – 兼容触摸屏手机与PC的幻灯片

TouchSlider 1.0 - 兼容触摸屏手机与PC的幻灯片
通知:本组件已经于2012年11月30日更新至1.2版本,请移步至《TouchSlider 1.2发布 – 支持宽度不固定幻灯》阅读。 注:应该是不支持IE6的。支持安卓系、iOS苹果机、平板以及PC上的浏览器,包括IE7、IE8等。 触屏手机越来越流行,所以制作网站也要越来越多的考虑手机用户的使用体验。网站上如果有轮换图片的幻灯片(走马灯)之类的功能,就要考虑触屏手机用户的使用体验,而提供他们可以通过手指滑动来切换上一张/下一张的功能,将会是很大的体验提
继续阅读→ 本文标签: , , , , , ,

七月
17

JavaScript: 支持iphone、ipad 使用两根手指放大图片

JavaScript: 支持iphone、ipad 使用两根手指放大图片
昨天写了一篇《 JavaScript: 让拖动支持iphone/ipad触摸 》,今天又无聊,想到了图片放大(zoom),让使用ios设备的的用户可以使用两根手指来缩放图片。想了一下,很容易就实现了。 其实原理也就是在图片接收了两个有效触摸点后,在手指移动过程中检测两点之间的距离的变化,以此来对图片进行放大缩小。 不多说,demo在这里(必须使用ios设备查看)。代码如下: var getZoomClass=(function(){ var SupportsTouches = ("createTouch" in document),//判断是否
继续阅读→ 本文标签: , , , ,

七月
16

JavaScript: 让拖动支持iphone/ipad触摸

JavaScript: 让拖动支持iphone/ipad触摸
一般的通过mousedown、mousemove、mouseup等打造的拖动,仅仅在普通的键盘+鼠标的电脑设备上可以工作。而到了ios设备上(iphone itouch ipad),则不能工作了。最近因为做个东西,需要支持ios设备,所以只好看了下webkit浏览器的触摸事件。 其实也很简单,对应mousedown、mousemove、mouseup的触摸事件分别是touchstart、touchmove、touchend。为了写个demo,花了不少的时间,所以为了节省时间,我文章里就不多说了,仅贴一下相关代码。 DEMO可以在此查看。 var getDr
继续阅读→ 本文标签: , , , ,

五月
20

javascript 图片预加载(远程获取图片尺寸)

javascript 图片预加载(远程获取图片尺寸)
注:2012.04.19更新,完善对IE的支持,修复onerror在IE下不执行问题。 有时候我们需要获取图片的尺寸,以用来对图片进行位置调整、大小限制等操作,以让图片适应页面的显示。传统的方法都是利用图片onload时获取尺寸,我也在介绍我自己用的限制图片尺寸文章中介绍了这种传统方法。但是最近我在《再谈javascript图片预加载技术》这里发现作者介绍了一种更好的方法,获取的速度远远大于传统的方法。 最近更新的社交媒体连接插件的“我的最新微博”
继续阅读→ 本文标签: , , , , ,

四月
12

JavaScript & images LazyLoad 图片延迟加载(伪lazyload)

JavaScript & images LazyLoad 图片延迟加载(伪lazyload)
注意,有歌声飘出,赶紧静音先! 2011.04.12 16:20更新: 经mice童鞋提醒,这种纯JS的图片lazyload都是自欺欺人,所以大家听歌吧,以下别看了。真正的lazyload需要前后端配合。你可以使用firebug或者chrome自带的开发者工具查看下面demo页面的资源resources或者网络,可以看到图片都是被下载下来了,并不会因为src的改变或者移除而停止加载。 lazyload可以用于很多场合,如JS、css的按需加载;对于页面上很多大图片的网站来说,图片的延迟加载,可以很好
继续阅读→ 本文标签: , , , ,

二月
22

javascript自定义Dialog对话框(alert, confirm, prompt) — (一)

javascript自定义Dialog对话框(alert, confirm, prompt) -- (一)
接触过javascript的同学一定都知道JS里的顶级对象window对象包含三个方法:alert(警告框,确定)、confirm(确认框,确认or取消)、prompt(输入确认框,输入内容and确认or取消),没接触过的你也一定在某个网站被狠狠的弹过。。。。 以alert警告框为例,通过调用window.alert(“消息”)可以在浏览器中弹出一个警告窗口(可省略window,直接使用alert)。但是这个窗口在不同的浏览器、不同的操作系统上,外观却并不相同,更不用说和自己网站的风格相搭配了
继续阅读→ 本文标签: , , , ,