让360浏览器强制优先使用极速模式

在head标签中添加一行代码:

<html>
  <head>
    <meta name="renderer" content="webkit|ie-comp|ie-stand">
  </head>
  <body>
  </body>
</html>

content的取值为webkit,ie-comp,ie-stand之一,区分大小写,分别代表用webkit内核,IE兼容内核,IE标准内核。
若页面需默认用极速核,增加标签:
若页面需默认用ie兼容内核,增加标签:
若页面需默认用ie标准内核,增加标签:
各渲染内核的技术细节

 

内核 Webkit IE兼容 IE标准
文档模式 Chrome 21 IE6/7 IE9/IE10/IE11(取决于用户的IE)
HTML5支持 YES NO YES
ActiveX控件支持 NO YES YES

各内核UA示例

移动web内容触摸滑动类库Swipe.js

想必做移动前端的同学经常会接到这样子的一个需求,就是在移动设备页面上的banner图能够用手指触摸左右或上下的滑动切换,这在移动设备是个很常见的一个效果,其用户体验远甚于点击一个按钮区域,通过手指的触摸操作也是移动设备的中一个特性,我们必须专业化的处理,哈哈。其实实现原理很简单,但平常中自己开发不是很方便。

今天就为大家带来这样子的一个轻量级js触摸滑动类库 – Swipe JS。这是一个非常小的一个javascript类库,但他的功能却不简单,它可以用来展示web页面上的任何内容,支持精确的触摸移动操作,而且还可以设置自动播放、等比例缩放等等实用性的功能。

Swipe函数介绍

下面就为大家介绍下Swipe JS的使用方法,Swipe有以下几个参数:

startSlide: 4,  //起始图片切换的索引位置
speed: 400,
auto: 3000, //设置自动切换时间,单位毫秒
continuous: true,  //无限循环的图片切换效果
disableScroll: true,  //阻止由于触摸而滚动屏幕
stopPropagation: false,  //停止滑动事件
callback: function(index, element) {},  //回调函数,切换时触发
transitionEnd: function(index, element) {}  //回调函数,切换结束调用该函数。

继续阅读

关于网页字体设置

以前做项目的时候就依葫芦画瓢的设置 { font-family:arial,”microsoft yahei”,simsun,sans-self; } 等类似的字体,然而当更多的设备和系统出现后,以前这样的设置已不能满足网页在各设备上的显示需求。

就拿最简单的宋体(simsun)来说吧,在Windows系统下显示是一个比较容易阅读的字体,然而在Mac上简直无法直视,如下图给出一个优化前后页面的对比效果:

字体优化前后对比图

因此,出于种种原因,促使我不得不去对字体做一个相应的了解。 继续阅读

textarea插入文字+光标移动到文字末尾

在网上看了很多用js 将光标移动到textarea的最后,但是看了很多垃圾方法,屁不管用,浪费时间,最近用到一个新方法

=IE支持document.selection
=Firefox,Chrome,Safari以及Opera都有selectionStart和selectionEnd属性

代码如下

function insertText(obj,str) {
    if (document.selection) {
        var sel = document.selection.createRange();
        sel.text = str;
    } else if (typeof obj.selectionStart === 'number' && typeof obj.selectionEnd === 'number') {
        var startPos = obj.selectionStart,
            endPos = obj.selectionEnd,
            cursorPos = startPos,
            tmpStr = obj.value;
        obj.value = tmpStr.substring(0, startPos) + str + tmpStr.substring(endPos, tmpStr.length);
        cursorPos += str.length;
        obj.selectionStart = obj.selectionEnd = cursorPos;
    } else {
        obj.value += str;
    }
}
function moveEnd(obj){
    obj.focus();
    var len = obj.value.length;
    if (document.selection) {
        var sel = obj.createTextRange();
        sel.moveStart('character',len);
        sel.collapse();
        sel.select();
    } else if (typeof obj.selectionStart == 'number' && typeof obj.selectionEnd == 'number') {
        obj.selectionStart = obj.selectionEnd = len;
    }
} 

继续阅读

《兰亭集序》 – 王羲之

  永和九年,岁在癸丑,暮春之初,会于会稽山阴之兰亭,修禊事也。群贤毕至,少长咸集。此地有崇山峻岭,茂林修竹,又有清流激湍,映带左右。引以为流觞曲水,列坐其次,虽无丝竹管弦之盛,一觞一咏,亦足以畅叙幽情。是日也,天朗气清,惠风和畅。仰观宇宙之大,俯察品类之盛,所以游目骋怀,足以极视听之娱,信可乐也。 
  夫人之相与,俯仰一世。或取诸怀抱,悟言一室之内;或因寄所托,放浪形骸之外。虽趣舍万殊,静躁不同,当其欣于所遇,暂得于己,快然自足,不知老之将至;及其所之既倦,情随事迁,感慨系之矣。向之所欣,俯仰之间,已为陈迹,犹不能不以之兴怀,况修短随化,终期于尽!古人云,“死生亦大矣。”岂不痛哉! 
  每览昔人兴感之由,若合一契,未尝不临文嗟悼,不能喻之于怀。固知一死生为虚诞,齐彭殇为妄作。后之视今,亦犹今之视昔。悲夫!故列叙时人,录其所述。虽世殊事异,所以兴怀,其致一也。后之览者,亦将有感于斯文。

继续阅读

js操作cookie

记录下javascript添加,删除,和读取cookie,其中有一下几个可能经常用到的地方做一个备注。
1、JSON.stringify(jsonObj) 将json对象转化为字符串对象;
2、escape对字符串进行编码,编码的目的是防止在cookie中出现特殊字符,用unescape转换编码后的字符串;
3、cookiMap.replace(/\s/g,””)去掉字符串中的空格;
4、document.cookie写入或读取cookie串。
继续阅读

判断用户设备平台

// 来自: http://www.qq.com/
if(window.location.toString().indexOf('pref=padindex') != -1){
}else{
	if(/AppleWebKit.*Mobile/i.test(navigator.userAgent) || (/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/.test(navigator.userAgent))){  
      if(window.location.href.indexOf("?mobile")<0){
		try{
			if(/Android|Windows Phone|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)){
				window.location.href="http://xw.qq.com/index.htm";
			}else if(/iPad/i.test(navigator.userAgent)){
              	window.location.href="http://www.qq.com/pad/"
			}else{
				window.location.href="http://xw.qq.com/simple/s/index/"
			}
		}catch(e){}
	}
	}
}

js获取年、月、日、时、分、秒 [js时钟]

备注下:

var _date = new Date(),
    _year = _date.getFullYear(),
   _month = (_date.getMonth() + 1) < 10 ? '0' + (_date.getMonth() + 1) : (_date.getMonth() + 1),
     _day = _date.getDate() < 10 ? '0' + _date.getDate() : _date.getDate(),
   _hours = _date.getHours() < 10 ? '0' + _date.getHours() : _date.getHours(),
 _minutes = _date.getMinutes() < 10 ? '0' + _date.getMinutes() : _date.getMinutes(),
 _seconds = _date.getSeconds() < 10 ? '0' + _date.getSeconds() : _date.getSeconds();

setInterval(function() {
    document.getElementById('clock').innerHTML = _year + '年' + _month + '月' + _day + '日' + _hours + '时' + _minutes + '分' + _seconds + '秒';
}, 1000);