常用的js方法合集


Posted in Javascript onMarch 10, 2017

数组及对象深拷贝

var arr = [1,'2',{a:1,b:[1,2]}];
function deepCopy(p, c) {

 var c = c || {};


 for (var i in p) {



 if (typeof p[i] === 'object' && p[i] !== null) {
c[i] = (p[i].constructor === Array) ? [] : {};

deepCopy(p[i], c[i]);



 } else {



 
  c[i] = p[i];



 }


 }


 return c;

}
var cArr = deepCopy(arr);
console.log(cArr);

获取地址栏参数

function getUrlParam(){
 var _arr = location.search.substr(1).split('&');
 var _obj = {};
 for (var i = 0; i < _arr.length; i++) {
 _obj[_arr[i].split('=')[0]] = _arr[i].split('=')[1]
 };
 return _obj;
}
console.log(getUrlParam());

修改微信title 兼容ios

function changeWxTitle(text){
 var $body = $('body');
 document.title = text;
 var $iframe = $('<iframe src="/favicon.ico"></iframe>');
 $iframe.on('load',function() {
 setTimeout(function() {
  $iframe.off('load').remove();
 }, 0);
 }).appendTo($body);
}

移动端响应式样式

/* 方法使用后会在 head标签添加一个style标签 并且有.my-resize 和 .no-resize的样式,需要适配屏幕的元素加上.my-resize类名即可,.no-resize是还原已适配的元素
 * window.onload = window.onresize = function(){
 *   pageResize({
 *     width : '320',   //默认宽320px 
 *     height : '504',   //默认高504px
 *   })
 *  }
 */
(function pageResize(opt) {
  var ua = navigator.userAgent,
    wp = ua.match(/Windows Phone ([\d.]+)/),
    android = ua.match(/(Android);?[\s\/]+([\d.]+)?/),
    // 设备宽高初始比例
    dw = document.documentElement.clientWidth,
    dh = document.documentElement.clientHeight,
    ds = dw / dh,
    // 页面宽高初始比例
    opt = opt || {},
    pw = opt.width || 320,
    ph = opt.height || 512,
    ps = pw / ph;
    // 核心代码:页面缩放比例
    var sx = dw/pw,
      sy = dh/ph; 
    var css = '.no-resize { -webkit-transform: scaleY('+sx/sy+');transform: scaleY('+sx/sy+'); }.my-resize { width:'+pw+'px !important;height:'+ph+'px !important;-webkit-transform: scale('+sx+','+sy+');transform: scale('+sx+','+sy+'); -webkit-transform-origin:left top;transform-origin:left top;}',
    head = document.getElementsByTagName('head')[0],
    style = document.createElement('style');
    style.type = 'text/css';
    if(style.styleSheet){
      style.styleSheet.cssText = css;
    }else{
      style.appendChild(document.createTextNode(css));
    }
    head.appendChild(style); 
})()

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
从新浪弄下来的全屏广告代码 与使用说明
Mar 15 Javascript
input输入框的自动匹配(原生代码)
Mar 19 Javascript
javascript获取网页宽高方法汇总
Jul 19 Javascript
JS实现页面载入时随机显示图片效果
Sep 07 Javascript
jquery 正整数数字校验正则表达式
Jan 10 Javascript
关于jQuery.ajax()的jsonp碰上post详解
Jul 02 jQuery
关于vue.extend和vue.component的区别浅析
Aug 16 Javascript
利用ES6的Promise.all实现至少请求多长时间的实例
Aug 28 Javascript
捕获未处理的Promise错误方法
Oct 13 Javascript
js 提取某()特殊字符串长度的实例
Dec 06 Javascript
react学习笔记之state以及setState的使用
Dec 07 Javascript
ant design pro中可控的筛选和排序实例
Nov 17 Javascript
利用Angular+Angular-Ui实现分页(代码加简单)
Mar 10 #Javascript
JS中利用localStorage防止页面动态添加数据刷新后数据丢失
Mar 10 #Javascript
C#微信小程序服务端获取用户解密信息实例代码
Mar 10 #Javascript
js实现产品缩略图效果
Mar 10 #Javascript
BootStrap注意事项小结(五)表单
Mar 10 #Javascript
微信小程序 弹框和模态框实现代码
Mar 10 #Javascript
BootStrap表单宽度设置方法
Mar 10 #Javascript
You might like
php实现无限级分类实现代码(递归方法)
2011/01/01 PHP
PHP获取表单数据与HTML嵌入PHP脚本的实现
2017/02/09 PHP
取得传值的函数
2006/10/27 Javascript
HTML代码中标签的全部属性 中文注释说明
2009/03/26 Javascript
jquery ajax return没有返回值的解决方法
2011/10/20 Javascript
JSON+HTML实现国家省市联动选择效果
2014/05/18 Javascript
javascript实现动态模态绑定grid过程代码
2014/09/22 Javascript
jquery控制页面部分刷新的方法
2015/06/24 Javascript
学习javascript面向对象 理解javascript对象
2016/01/04 Javascript
基于MVC5和Bootstrap的jQuery TreeView树形控件(二)之数据支持json字符串、list集合
2016/08/11 Javascript
JS获取多维数组中相同键的值实现方法示例
2017/01/06 Javascript
解决URL地址中的中文乱码问题的办法
2017/02/10 Javascript
Bootstrap进度条实现代码解析
2017/03/07 Javascript
vue如何引用其他组件(css和js)
2017/04/13 Javascript
nodejs入门教程三:调用内部和外部方法示例
2017/04/24 NodeJs
JavaScript标准对象_动力节点Java学院整理
2017/06/27 Javascript
jQuery EasyUI window窗口使用实例代码
2017/12/25 jQuery
微信小程序 Animation实现图片旋转动画示例
2018/08/22 Javascript
Vue2.0使用嵌套路由实现页面内容切换/公用一级菜单控制页面内容切换(推荐)
2019/05/08 Javascript
Python实现合并同一个文件夹下所有txt文件的方法示例
2018/04/26 Python
python执行精确的小数计算方法
2019/01/21 Python
python使用opencv实现马赛克效果示例
2019/09/28 Python
解决python执行较大excel文件openpyxl慢问题
2020/05/15 Python
Python暴力破解Mysql数据的示例
2020/11/09 Python
学点简单的Django之第一个Django程序的实现
2021/02/24 Python
工程监理应届生求职信
2013/11/09 职场文书
酒后驾驶检讨书
2014/01/27 职场文书
职业培训师职业生涯规划
2014/02/18 职场文书
小区消防演习方案
2014/02/21 职场文书
护理专业毕业生自荐书
2014/05/24 职场文书
老兵退伍标语
2014/10/07 职场文书
信访工作汇报材料
2014/10/27 职场文书
2014年政协工作总结
2014/12/09 职场文书
工作失误检讨书范文
2015/01/26 职场文书
张丽莉事迹观后感
2015/06/16 职场文书
人为什么会“幸灾乐祸”?
2019/08/06 职场文书