@pspgbhu
2017-01-03T04:54:54.000000Z
字数 11092
阅读 1104
未分类
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,button,textarea,p,blockquote,th,td,a,i{ margin:0; padding:0; box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box;}body {background-color: #fff;color: #000;font: 400 14px/1.5 "微软雅黑","Hiragino Sans GB","WenQuanYi Micro Hei",tahoma,sans-serif;}h1, h2, h3, h4, h5, h6 { font-weight:normal; font-size:100%; }address, caption, cite, code, dfn, em, strong, th, var, i { font-style:normal; font-weight:normal;}a {color:#000; text-decoration:none; display: block;}img { border:none; }ol,ul,li { list-style:none; }input, textarea, select, button { font:14px Verdana,Helvetica,Arial,sans-serif; }button{border: none;outline: none;}table { border-collapse:collapse; }input,button,textarea,a{-webkit-tap-highlight-color: rgba(255,255,255,0);}/* css common */.clearfix:after, .clearfix:before {content: ""; display: block; height:0; clear:both; visibility: hidden;}.clearfix { *zoom:1; }.pull-left{float: left;}.pull-right{float: right;}
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,button,textarea,p,blockquote,th,td,a{ margin:0; padding:0; box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box;}a {color:#000; text-decoration:none; display: block;}img { border:none; }ol,ul,li { list-style:none; }.clearfix:after, .clearfix:before {content: ""; display: block; height:0; clear:both; visibility: hidden;}.clearfix { *zoom:1; }.pull-left{float: left;}.pull-right{float: right;}
//强制webket内核渲染<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" >//视口<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">//格式探索<meta name="format-detection" content="telephone=no">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" ><meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"><meta name="format-detection" content="telephone=no">
<meta http-equiv="Expires" content="0" /><meta http-equiv="Pragma" content="no-cache" /><meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
如果你的网站不想被剥去外衣、往赤裸的身体上贴广告,就加上下面的代码。
<meta http-equiv="Cache-Control" content="no-siteapp" />
文字超出了需要隐藏并显示省略号这个在工作中很多时候都要用到,我想很多人都碰到过吧,这个有两种解决方法
一是用程序开截取字符长度,这个其实也是可以的
第二种是用样式来做,这里主要介绍一下用样式怎么来做吧,我话也不多说了吧直接上代码吧,
css样式如下:
.css1{color:#6699ff;border:1px #ff8000 dashed;margin-bottom:20px;width: 20em;/*不允许出现半汉字截断*/}/*****单行文本*****/.css2 {overflow: hidden; /*自动隐藏文字*/text-overflow: ellipsis;/*文字隐藏后添加省略号*/white-space: nowrap;/*强制不换行*/}.css{/*****多行文本*****/width: 20em;/*不允许出现半汉字截断*/overflow: hidden; /*自动隐藏文字*/text-overflow: ellipsis;/*文字隐藏后添加省略号*/display: -webkit-box;-webkit-line-clamp: 3;-webkit-box-orient: vertical;}
html代码如下:
<div class="css1">Web前端开发 - 专注于网站前端设计与Web用户体验</div><div class="css2">Web前端开发 - 专注于网站前端设计与Web用户体验</div><st这yle type=”text/css”>.css1{color:#6699ff;border:1px #ff8000 dashed;margin-bottom:20px;width: 20em;/*不允许出现半汉字截断*/}.css2 {overflow: hidden; /*自动隐藏文字*/text-overflow: ellipsis;/*文字隐藏后添加省略号*/white-space: nowrap;/*强制不换行*/width: 20em;/*不允许出现半汉字截断*/color:#6699ff;border:1px #ff8000 dashed;}</style><div class=”css1″>Web前端开发 – 专注于网站前端设计与Web用户体验</div><div class=”css2″>Web前端开发 – 专注于网站前端设计与Web用户体验</div><p>
.clearfix:after, .clearfix:before {
content: "";
display: block;
height:0;
clear:both;
visibility: hidden;
}
.clearfix {
*zoom:1;
}
<meta name="format-detection" content="telephone=no"> <meta http-equiv="x-rim-auto-match" content="none"><a href="sms:13764567708"> <a href="tel:13764567708"><a href="tel:0916 8655266#mp.weixin.qq.com"> #mp.weixin.qq.com后缀
img{vertical-align:bottom;//middle和top也都可以}
为相对地址设定绝对路径
border-width: 10px 18px;border-style: solid;border-color: transparent transparent transparent #b51717;
http://www.cnblogs.com/jscode/archive/2012/10/19/2730905.html
{-webkit-animation: next 1s ease-in-out infinite;animation: next 1s ease-in-out infinite;}@-webkit-keyframes next {0%,30% {opacity: 0.2;-webkit-transform: translateY(-10px);}60% {opacity: 1;-webkit-transform: translateY(0);}100% {opacity: 0.2;-webkit-transform: translateY(5px);}}@keyframes next {0%,30% {opacity: 0.2;-webkit-transform: translateY(-10px);}60% {opacity: 1;-webkit-transform: translateY(0);}100% {opacity: 0.2;-webkit-transform: translateY(5px);}}
function addLoadEvent(func){var oldonload=window.onload;if(typeof window.onload!='function'){window.onload=func;}else{window.onload=function(){oldonload();func();}}}addLoadEvent(firstfunction);addLoadEvent(secondfunction);
function addEvent(ele,type,hander){//type为click,而不是onclickif(ele.addEventListener){ele.addEventListener(type,hander,false);} else if(ele.attachEvent){ele.attachEvent('on'+type,hander);} else {ele['on'+type]=hander;}}document.getElementById("myDIV").removeEventListener("mousemove", myFunction);document.getElementById("myDIV").addEventListener("mousemove", myFunction);
function insertAfter(newElement,targetElement){var parent = targetElement.parentNode;if(parent.lastChild == targetElement){parent.appendChild(newElement)}else{parent.insertBefore(newElement,targetElement,nextSibling);}}
由于ie10以前不支持getElementsByClassName,因此便自己封装一个类似函数,以解决兼容问题。
function getByClass(clsName,parent){var oParent=parent?document.getElementById(parent):document;eles=[];elements=oParent.getElementsByTagName('*');for(var i=0,l=elements.length;i<l;i++){if(elements[i].className==clsName){//push给一个数组末尾添加元素//要想数组的开头添加一个或多个元素,请使用 unshift() 方法eles.push(elements[i]);}}return eles;}
function stopPropagation(event) {event = event || window.event;event.stopPropagation ? event.stopPropagation() : event.cancelBubble = true;}title.onclick = function(event) {// 执行脚本menu.style.display = "block";event = event || window.event;if (event.stopPropagation) { //W3C阻止冒泡方法event.stopPropagation();} else {event.cancelBubble = true; //IE阻止冒泡方法}}
keyDown : 按任意键重复触发;
keyPress : 按下字符键重复触发;
keyUp : 释放键盘上的键触发
keyCode :得到对应键的键码值;
//和element.style.attr的区别是,后者只能取css样式中已有的值//而前者可以取到element的默认样式的值function getStyle(obj, attr) {if (obj.currentStyle) { //currentStyle是针对ie浏览器return obj.currentStyle[attr];} else {return getComputedStyle(obj, false)[attr]; //针对火狐浏览器}}
function GetScrollTop() {return (document.documentElement.scrollTop || 0) + (document.body.scrollTop || 0);}
function sidebar(){window.onscroll=function(){if(!document.getElementById) return false;var side=document.getElementById("side"),news=document.getElementById("news");sideScrollTop=GetScrollTop();if(sideScrollTop>news.offsetTop){side.className="sidebar sidebarFixed";console.log("a"+sideScrollTop);} else{side.className="sidebar";}}}function GetScrollTop() {return (document.documentElement.scrollTop || 0) + (document.body.scrollTop || 0);}
function startmove(obj, json, fn) {clearInterval(obj.timer);obj.timer = setInterval(function() {var flag= true;for(var attr in json){var icur = 0;if (attr == "opacity") {icur = Math.round(parseFloat(getStyle(obj, attr)) * 100);} else {icur = parseInt(getStyle(obj, attr));}var sp = (json[attr] - icur) / 8;sp = sp > 0 ? Math.ceil(sp) : Math.floor(sp);if (icur != json[attr]) {flag = false;}if (attr == "opacity") {obj.style.filter = "alpha(opacity:" + (icur + sp) + ")"obj.style.opacity = (icur + sp) / 100;console.log(icur)} else {obj.style[attr] = icur + sp + "px"}}if(flag){clearInterval(obj.timer);if(fn){fn();}}}, 20)}function getStyle(obj,attr) {if (obj.currentStyle) { //currentStyle是针对ie浏览器return obj.currentStyle[attr];} else {return getComputedStyle(obj,false)[attr]; //针对火狐浏览器}}
<a href="javascript:void(0);" onclick="SetHome(this,'{dede:global.cfg_basehost/}/Tenone_company/');" class="link1">设为首页</a><a href="javascript:void(0);" onclick="AddFavorite('{dede:global.cfg_basehost/}/Tenone_company','Tenone_company');" class="link1">收藏网站</a>
二、js部分
//set homepage(设为主页)function SetHome(obj, vrl) {try {obj.style.behavior = 'url(#default#homepage)';obj.setHomePage(vrl);} catch (e) {if (window.netscape) {try {netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");} catch (e) {// alert("此操作被浏览器拒绝!\n请在浏览器地址栏输入"about:config"并回车\n然后将 [signed.applets.codebase_principal_support]的值设置为'true',双击即可。");}var prefs = Components.classes['@mozilla.org/preferences-service;1'].getService(Components.interfaces.nsIPrefBranch);prefs.setCharPref('browser.startup.homepage', vrl);}}}2、//加入收藏function AddFavorite(sURL, sTitle) {try {window.external.addFavorite(sURL, sTitle);} catch (e) {try {window.sidebar.addPanel(sTitle, sURL, "");} catch (e) {alert("加入收藏失败,请使用Ctrl+D进行添加");
<body><div style="width: 200px;height:18px;overflow:hidden;" id="marq">111111111111111111111111111111111111111111111111122222222222222222222222222222222223333333333333333333333333333333333333333333344444444444444444444444444444444444555555555555555555555555555555555666666666666666666666666666666666</div><script>var marq = document.getElementById("marq"),vari = 1;setTimeout(function() {marq.scrollLeft += vari;if (marq.scrollLeft < 1) {vari = 1;} else if (marq.scrollLeft > 1500) {vari = -1;}setTimeout(arguments.callee, 18);}, 18);</script></body>
var move=0document.addEventListener("touchmove",function(e){if(move==0){e.preventDefault();e.stopPropagation();}},false);
`object.oninput=function(){myScript};
$('obj').on('click',function(){alert('a');})
有时会出现多次点击后反复绑定多次click事件。如上例,可能点击多次后,再点击一次会反复弹出提示框;
解决方法:
$('obj').unbind('click').on('click',function(){alert('a');})
先卸载事件,再绑定事件。
clickEvent='ontouchstart' in document.documentElement ? "touchstart" : "click"
//图片预加载var percent = 0;//显示百分比var loadedimg = 0;//已加载图片数量var images = new Array()function preload() {//预加载图片总数var n = preload.arguments.length;for (i = 0; i < preload.arguments.length; i++) {images[i] = new Image()images[i].src = preload.arguments[i]images[i].onload = function(){//每张图片加载成功后执行loadedimg++;percent = Math.round( loadedimg/n*100 );console.log(percent);if(percent == 100){//全部加载完成后执行alert('ok!');}};};};preload("http://m.fun-x.cn/hc/Midea/img/1LOADING_fire1_03.png")
最佳解决方案:canvas缓存法。
1 创建缓存数组
2 预加载图片,没加载完一张放入数组中。
3 从数组中取出图片,使用canvas画出来。
4 清除canvas当前内容
5 画下一张
核心代码:
//创建缓存数组window.keyFrames = [];//每加载一张图片,就将图片放入数组中each: function() {var img = new Image;img.src="img/" + y + ".png";keyFrames.push(img);y++;};var ctx = document.getElementById('canvas').getContext('2d');//获取画布上下文function animate() {if(count==49)return;ctx.clearRect(0, 0, canvas.width, canvas.height);//清空当前画布内容ctx.drawImage(keyFrames[count], 0, 0, 640, 1008);//从数组中取出图片画count++;setTimeout(animate,30);//循环调用};
语法:element.classList
lel.scrollLeft = 200 ;
function fadeIn(obj, time){var webAni = 'webkit-animation: fadeIn ' + time +'s ease-in forwards;';var ani = 'animation: fadeIn ' + time +'s ease-in forwards;';var fadeInAni = webAni + ani;obj.style = fadeInAni ;obj.setAttribute('style',fadeInAni)}function fadeInOut(obj, time){var webAni = 'webkit-animation: fadeIn ' + time +'s ease-in reverse forwards;';var ani = 'animation: fadeIn ' + time +'s ease-in reverse forwards;';var fadeOutAni = webAni + ani;obj.style = fadeOutAni ;obj.setAttribute('style',fadeOutAni)setTimeout(function() {obj.style.display = "none";}, time * 1000);}