
原生js
尜尜alp
专注前端 热爱摄影
展开
-
javascript的6种继承方式
一、原型链继承思路:利用原型让一个引用类型继承另外一个引用类型的属性和方法,因为每个构造函数都有一个原型对象(也就是所有的函数默认的原型都是Object的实例),原型对象都包含一个指向构造函数的指针,而实例都包含一个指向原型对象的内部指针。重点:原型链上面所有的属性和方法都是可以相互共享的。// 一个引用继承另外一个引用 也就实现了继承function Parent() { t...原创 2019-03-14 11:12:20 · 277 阅读 · 0 评论 -
原生js获取execl里面的值 主要使用ActiveXObject
今天一个程序员给了一表我,里面有一百多条数据,叫我一个一个数据的复制到系相应的函数里面比如 put("gaga1","gaga2"),这样一句话,要我复制一百多遍,fuck。。。我就说你自己用java读取不就可以啦!他就说用java要运行半个小时以上,我就心里想fuck,是你不怎么懂java吧!此时自己心中的几百万头草泥马在奔腾!!!!!! 于是自己就去找了一个js方法来读取ex原创 2013-10-31 16:30:02 · 1541 阅读 · 0 评论 -
javascript 验证 只能输入数字和一个小数点
function gaga(obj){ // 值允许输入一个小数点和数字 obj.value = obj.value.replace(/[^\d.]/g,""); //先把非数字的都替换掉,除了数字和. obj.value = obj.value.replace(/^\./g,""); //必须保证第一个为数字而不是. obj.value = obj.原创 2013-10-21 11:09:39 · 1279 阅读 · 0 评论 -
javascript随机数
function Random( num_first,num_last ){ //输出指定范围内的随机数的随机整数 switch( arguments.length ){ case 1 : return parseInt( Math.random() * num_first + 1 ); case 2 : return parseInt原创 2013-09-17 11:36:38 · 936 阅读 · 0 评论 -
今天是星期几的不同写法
第一种写法 var str = ""; var week = new Date().getDay(); if (week == 0) { str = "今天是星期日"; } else if (week == 1) { str = "今天是星期一"; } else if (week == 2) {原创 2013-09-13 10:55:45 · 2098 阅读 · 5 评论 -
js冒泡法和数组转换成字符串
js代码:window.onload = function(){ var mian = document.getElementById( "mian" ); var mian1 = document.getElementById( "mian1" ); var str = mian.innerHTML; var arry = []; var len = str.length; fo原创 2013-08-14 15:06:07 · 1241 阅读 · 0 评论 -
体感游戏之障碍越野赛——新世界,新征程
原作者:phil 这也许不仅仅是一款游戏,也许是一个新世界的开始。障碍越野赛是体感游戏的第一款游戏。 通过建立长链接将手机(wifi连接)与PC浏览器进行绑定,将用户覆盖最广的电子设备——手机成为电脑游戏的游戏手柄,通过手机上下晃动控制游戏人物赛跑。一个前端的技术、一个全新的交互方式、一个融入SNS元素的全新游戏模式。这不仅是一款游戏,我们有了更广阔的想象空间。产品转载 2013-08-19 17:16:44 · 1442 阅读 · 0 评论 -
window对象
[window对象] 它是一个顶层对象,而不是另一个对象的属性,即浏览器的窗口。 属性 defaultStatus 缺省的状态条消息 document 当前显示的文档(该属性本身也是一个对象) frame 窗口里的一个框架((FRAME>)(该属性本身也是一个对象) frames array 列举窗口的框架对象的数组,按照这些对象在文档中出现的顺序列出(该属性本身也是原创 2013-08-07 14:46:20 · 1478 阅读 · 0 评论 -
解决firefox不支持innerText的办法
js代码:window.onload = function(){if(window.navigator.userAgent.toLowerCase().indexOf("msie")==0){ //firefox innerText HTMLElement.prototype.__defineGetter__( "innerText", function原创 2013-08-07 14:24:17 · 1719 阅读 · 0 评论 -
响应式布局这件小事
讲到响应式布局,相信大家都有一定的了解,响应式布局是今年很流行的一个设计理念,随着移动互联网的盛行,为解决如今各式各样的浏览器分辨率以及不同移动设备的显示效果,设计师提出了响应式布局的设计方案。今天就和大家来讲讲响应式布局这件小事,包含什么是响应式布局、响应式布局的优点和缺点以及响应式布局该怎么设计(通过CSS3Media Query实现响应布局)。一、什么是响应式布局?响应式转载 2013-07-10 10:44:24 · 1033 阅读 · 0 评论 -
深入理解JavaScript的闭包特性 如何给循环中的对象添加事件
深入理解JavaScript的闭包特性如何给循环中的对象添加事件初学者经常碰到的,即获取HTML元素集合,循环给元素添加事件。在事件响应函数中(event handler)获取对应的索引。但每次获取的都是最后一次循环的索引。原因是初学者并未理解JavaScript的闭包特性。有个网友问了个问题,如下的html,为什么点击所有的段落p输出都是5,而不是alert出对应的0,1转载 2013-06-09 15:21:42 · 1174 阅读 · 0 评论 -
css3移动端动画
css3移动端动画,动画方式很简单只需要添加指定方式的class即可实现很酷炫的动画,组件引入了animate.css,目前只有里面的动画方式。组件可以用于酷炫的活动页面,页面交互动作等。原创 2016-11-29 17:58:10 · 2777 阅读 · 0 评论 -
移动端弹出列表选择框
pushbutton 移动端弹出列表选择框移动端从下往上推动画效果端弹出列表选择框,适应所有主流移动端机型,支持Node引入,require引入;如有用得不爽可以随时提意见,谢谢。原创 2016-11-04 14:54:21 · 10785 阅读 · 3 评论 -
移动端上拉下拉刷新组件
listloading是一个移动端的上拉、下拉加载更多的组件。主要依赖于iscroll.js v5.1.2基础上开发的组件,基础库可以使用jquery.js或者zepto.js操作dom节点,目前我是使用了zepto.js作为基础库操作dom,以jquery插件的形式存在。如果不想以插件方式使用,则只需要把listloading直接移植你需要的库里面就ok啦。listloading主要针对移动端而生,在使用浏览器自带滚动,用户体验很不友好,与Android和ios差别甚远,所以选择iscroll.js,它实原创 2016-08-04 15:27:58 · 3358 阅读 · 0 评论 -
前端组件库大合集-必备收藏
来源:http://www.xuanfengge.com/he-sets-the-front-end-component-library-the-essential-collection.html前言本文包含搭建web app常用的样式/组件等收集列表(移动优先),推荐mark!0. 前端自动化(Workflow)前端构建工具Yeoman转载 2015-09-08 17:47:58 · 8406 阅读 · 1 评论 -
解决 在Mac OS下开发html5+JS Chrome 浏览器 跨域 和 安全访问问题
原文地址:http://blog.youkuaiyun.com/justinjing0612/article/details/9532953 从去年到今年一直从事 Hybrid开发模式,一会要写写 iOS native 代码,一会要写写 Html5+js 代码。 搞的我意识已经模糊了,在mac os下开发html5 +js代码会遇到好多问题,各个浏览转载 2015-06-06 15:17:04 · 1580 阅读 · 0 评论 -
js寄生函数
// 寄生函数function obj(o){ function Fn(){}; Fn.prototype = o; // 把指针转回给自己 return new Fn();}function create(o,oBj){ var _o = obj(o.prototype); _o.constructor = oBj; oBj.prototype = _o; return原创 2015-03-11 21:52:39 · 935 阅读 · 0 评论 -
移动端调试使用日志定位
window.onload = function(){ onerror=handleErr11111111; var txt=""; function handleErr11111111(msg,url,l){ txt="本页中存在错误。\n\n" txt+="错误:" + msg + "\n" // txt+="URL: " + url + "\n" txt+="行:" +原创 2015-03-20 20:48:45 · 1278 阅读 · 0 评论 -
js监听移动端是否横竖屏
手机横、竖屏事件 //屏幕方向标识,0横屏,其他值竖屏var orientation=0;//转屏事件,内部功能可以自定义function screenOrientationEvent(){ if(orientation == 0)document.getElementById("change").value="竖"; else document.getElementBy原创 2015-03-25 10:55:46 · 3031 阅读 · 0 评论 -
javascript图片延迟加载
图片延迟加载 img{display:block;width:350px;height:245px;background:url(img/loading-black.gif) center center no-repeat}var obj=document.getElementsByClassName("test"),i,t,h;转载 2014-12-20 18:40:34 · 842 阅读 · 0 评论 -
js判断鼠标移动方向
js代码:var gaga = function(wrap){ var wrap = document.getElementById(wrap); var hoverDir = function(e){ var w = wrap.offsetWidth, h = wrap.offsetHeight,原创 2015-01-29 14:40:59 · 5889 阅读 · 1 评论 -
javascript oop JavaScript面向对象编程
作者:草履虫 email:caolvchong@gmail.com 原文出自:cceer.xmu.edu.cn/blog/---->什么是类和对象 这是所有面向对象编程之前必须弄明白的. 所谓类:简单地说就是模板,说的专业一些,是一类具有某种性质的物的集合.比如:人就是一个类,车也是一个类,等等. 所谓对象:就是类的具体实现.如上面所说,人转载 2013-06-13 15:31:37 · 944 阅读 · 0 评论 -
原生js 事件代理方法
1 10 100 1000 10000 100000 1000000 10000000 100000000 1000000000 10000000000 100000000000var gaga = document.getElementById( "gaga" );gaga.onclick = function( e ){ var e = e || window.原创 2013-04-19 14:38:39 · 2093 阅读 · 0 评论 -
ajax异步获取数据
function createXHR(){ if( typeof XMLHttpRequest != "undefined" ){ return new XMLHttpRequest(); } else if( typeof ActiveXObject != "undefined" ){ var version = [ "MSXML2.XMLHttp.6.0", "MSXM原创 2013-03-19 14:49:14 · 1599 阅读 · 2 评论 -
ajax获取数据
function gaga(){ function createXHR(){ if( typeof XMLHttpRequest != "undefined" ){ return new XMLHttpRequest(); }else if( typeof ActiveXObject != "undefined" ){ var version = [ "MSXML2.原创 2013-03-18 18:36:38 · 1289 阅读 · 0 评论 -
live的用法于hover的用法 鼠标悬停效果
// live主要用于对动态加载出来的元素绑定事件// 产品目录 $(".lm_div_q dd").live({ mouseenter: function() { $(this).find("strong").addClass("tj_strong"); $(this).find("strong").next().slideDown(200); // 显示下拉框原创 2013-03-29 14:15:08 · 1364 阅读 · 0 评论 -
判断是否有flash插件
function hasPlugin( ga ){ var ga = ga.toLowerCase(); for( var i = 0; i < navigator.plugins.length; i++ ){ if( navigator.plugins[i].name.toLowerCase().indexOf( ga ) > -1 ){ return true; } }原创 2013-03-15 16:50:48 · 1255 阅读 · 0 评论 -
获取XHR对象
function createXHR(){ if( typeof XMLHttpRequest != "undefined" ){ return new XMLHttpRequest(); }else if( typeof ActiveXObject != "undefined"){ // 判断ie var versions = [ "MSXML2.XMLHttp.6.0",原创 2013-03-15 11:16:05 · 1753 阅读 · 0 评论 -
跨浏览器获取序列化的xml
function getXMLDOM( xmlStr ){ var xmlDom = null; if( typeof window.DOMParser != "undefined" ){ // xmlDom = ( new DOMParser ).parseFromString( xmlStr,"text/xml" ); var errors = xmlDom.getEle原创 2013-03-13 19:03:16 · 1202 阅读 · 0 评论 -
js冒泡排序法
css代码:*{margin:0;padding:0;}.gaga_tb{margin:30px;}.gaga_tb tr th,.gaga_tb tr td{height:30px;border:1px solid #ccc;text-align:center;}js代码:function gaga_x(arr,e){ // 冒泡法 for(var i =原创 2013-03-08 15:25:32 · 2401 阅读 · 0 评论 -
Javascript和CSS的标签属性对应表
在写javascript中,经常要用到style对象的css属性,很多不记得其实很好记,基本就是CSS中的“-”转化为javascript的驼峰写法,除了注意下float盒子标签和属性对照CSS语法(不区分大小写)JavaScript语法(区分大小写)borderborderborder-bottomborderBottom原创 2013-02-25 11:36:35 · 1323 阅读 · 0 评论 -
javascript 异步编程
这可能是个比较深的话题。何谓异步?笼统地说,异步在javascript就是延时执行。严格来说,javascript中的异步编程能力都是由BOM与DOM提供的,如setTimeout,XMLHttpRequest,还有DOM的事件机制,还有HTML5新增加的webwork, postMessage,等等很多。这些东西都有一个共同的特点,就是拥有一个回调函数,实现控制反转。由于控制反转是更深奥的问转载 2013-02-18 14:56:34 · 646 阅读 · 0 评论 -
document.compatMode == "CSS1Compat"
var width = window.innerWidth;var height = window.innerHeight;if(typeof width != "Number"){ // IE width = document.compatMode == "CSS1Compat" ? document.documentElement.clientWidth : document.b原创 2013-01-21 14:51:32 · 1501 阅读 · 0 评论 -
javascript是没有重载功能的
javascript是没有重载功能的 比如function box(num,age){ return num+10;}function box(num){ return num+100;}var sui = box(10,23);alert(sui)这样返回来的结果是110,后面的函数会把前面的覆盖掉的,原因是因为javascript没有重载的功能;原创 2013-01-10 23:06:59 · 613 阅读 · 0 评论 -
js实现无缝滚动效果
找了很多无缝滚动的效果,主要用到的函数就是scrollLeft(左边滚动),自己就重新以自己的想法写了一次了,兼容所有主流浏览器。无缝滚动图片*{margin:0;padding:0;}ul,li{list-style:none}.mc{margin:30px auto;}#gaga{height:92px;width:782px;overflow:hi原创 2012-12-21 14:55:27 · 1018 阅读 · 0 评论 -
纯javascript拖拽
css部分 #gaga{position:fixed;top:0;left:0;background:#f00;width:100px;height:100px;_position:absolute;cursor:move;}html部分 javascript部分/* 2013-4-2 尜尜制作 鼠标拖拽效果* 1、要实现鼠标拖拽功能,就是三个事原创 2013-04-02 15:02:42 · 1250 阅读 · 0 评论 -
shift,ctrl,alt按键的获取
document.onclick = function(e){ alert(getKey(e)); }; function getKey(e){ var e = e || window.event; var keys = []; if(e.shiftKey){ keys.push("shift键"); }; if(e.ctrlKey){ keys.pu原创 2013-04-07 19:51:35 · 1233 阅读 · 0 评论 -
js封装函数
// 跨浏览器添加时间function addEvent( obj,type,fn ){ if( obj.addEventListener ){ obj.addEventListener( type,fn,false ); }else if( obj.attachEvent ){ obj.attachEvent( "on" + type, fn ); };};// 跨浏览器移除原创 2013-05-06 20:19:09 · 1427 阅读 · 0 评论 -
使用getBoundingClientRect()方法获取元素距离浏览器周边的位置
var box = document.getElementById( "gaga1" );/* alert( box.getBoundingClientRect().top );alert( box.getBoundingClientRect().right );alert( box.getBoundingClientRect().bottom );alert( box.getBoundi原创 2013-04-16 18:33:09 · 2278 阅读 · 0 评论 -
同时使用n个window onload加载
/*1、obj相当于window2、type相当于onload3、fn相当于匿名函数*/function addEvent( obj,type,fn ){ var saved = null; // 用户保存上一个事件 if( typeof obj[ "on" + type ] == "function" ){ saved = obj[ "on" + type原创 2013-04-24 19:35:04 · 1068 阅读 · 0 评论