您的位置:

首页 >

腾博会官网9888 >

腾博会官网9888:基于jQuery解决ios10以上版本缩放问题 >

腾博会官网9888:基于jQuery解决ios10以上版本缩放问题

2016-01-15 04:08:09

分类:腾博会官网9888

具体代码如下所示:<script type="text/javascript"> /*解决ios10以上版本缩放问题 20171102*/ window.onload=function () { document.addEventListener('touchstart',function (event) { if(event.touches.length>1){ event.preventDefault(); } }) var lastTouchEnd=0; document.addEventListener('touchend',function (event) { var now=(new Date()).getTime(); if(now-lastTouchEnd<=300){ event.preventDefault(); } lastTouchEnd=now; },false) } </script>补充:下面看下ios10中禁止用户缩放页面在ios10前我们能通过设置meta来禁止用户缩放页面:<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0;" name="viewport" /> 在ios10系统中meta设置失效了:为了提高Safari中网站的辅助功能,即使网站在视口中设置了user-scalable = no,用户也可以手动缩放。解决方法:监听事件来阻止window.onload=function () { document.addEventListener('touchstart',function (event) { if(event.touches.length>1){ event.preventDefault(); } }) var lastTouchEnd=0; document.addEventListener('touchend',function (event) { var now=(new Date()).getTime(); if(now-lastTouchEnd<=300){ event.preventDefault(); } lastTouchEnd=now; },false) } 总结以上所述是小编给大家介绍的基于jQuery解决ios10以上版本缩放问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

概述:一般情况下都是通过ajax进行请求获取数据。boostrap+ajax1、代码//权限分配 $('#authority').click(function() { $("#jstree").jstree({ "core" : { "themes" : { "responsive": false }, // so that create works "check_callback" : true, 'data' : function (obj, callback) { var jsonstr="[]"; var jsonarray = eval('('+jsonstr+')'); $.ajax({ type: "GET", url:"/demo/authority/getAuthoritys", dataType:"json", async: false, success:function(result) { var arrays= result; for(var i=0 ; i<arrays.length; i++){ console.log(arrays[i]) var arr = { "id":arrays[i].id, "parent":arrays[i].parentId=="root"?"#":arrays[i].parentId, "text":arrays[i].name } jsonarray.push(arr); } } }); callback.call(this, jsonarray); } }, "types" : { "default" : { "icon" : "glyphicon glyphicon-flash" }, "file" : { "icon" : "glyphicon glyphicon-ok" } }, "state" : { "key" : "demo2" }, "plugins" : [ "dnd", "state", "types","checkbox","wholerow" ] }); $('#setAuthority').modal(); }); 总结:"responsive": false :表示主题是否适应手机类小尺寸屏幕,默认为false"check_callback" : true:表示形成树是否可以重新组织,也是改变顺序,层次关系callback.call(this, jsonarray):将数组放入树形types:{}设置类型,图标 "state" : { "key" : "demo2" }:将选中的状态保存浏览器中"plugins" : [ "dnd", "state", "types","checkbox","wholerow" ] 表示插件相关,详情参考点击打开链接url路径换成你后台地址,返回时json数组2、html标签<!-- 权限分配模框--> <div class="modal fade" id="setAuthority"> <div class="modal-dialog"> <div class="modal-content message_align"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-label="Close"> <span aria-hidden="true">×</span> </button> <h4 class="modal-title">权限分配</h4> </div> <div class="modal-body"> <div id= "jstree"> </div> </div> <div class="modal-footer"> <input type="hidden" id="url" /> <button type="button" class="btn btn-default" data-dismiss="modal">取消</button> <a onclick="authorityConfirm()" class="btn btn-success" data-dismiss="modal">确定</a> </div> </div> <!-- /.modal-content --> </div> <!-- /.modal-dialog --> </div> 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

本文实例讲述了JS实现队列的先进先出功能。分享给大家供大家参考,具体如下:/** * [Queue] * @param {[Int]} size [队列大小] */function Queue(size) { var list = []; //向队列中添加数据 this.push = function(data) { if (data==null) { return false; } //如果传递了size参数就设置了队列的大小 if (size != null && !isNaN(size)) { if (list.length == size) { this.pop(); } } list.unshift(data); return true; } //从队列中取出数据 this.pop = function() { return list.pop(); } //返回队列的大小 this.size = function() { return list.length; } //返回队列的内容 this.quere = function() { return list; }}//初始化没有参数的队列var queue = new Queue();for (var i = 1; i <= 5; i++) { queue.push(i);}console.log(queue.quere());console.log(queue.pop()); //从队列中取出一个console.log(queue.quere());var queue = new Queue(3);for (var i = 1; i <= 5; i++) { queue.push(i);}console.log(queue.quere());console.log(queue.pop());console.log(queue.quere());结果:[ 5, 4, 3, 2, 1 ]1[ 5, 4, 3, 2 ][ 5, 4, 3 ]3[ 5, 4 ]更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript数据结构与算法技巧总结》、《JavaScript数学运算用法总结》、《JavaScript排序算法总结》、《JavaScript遍历算法与技巧总结》、《JavaScript查找算法技巧总结》及《JavaScript错误与调试技巧总结》希望本文所述对大家JavaScript程序设计有所帮助。

例如,当前网页中的url为https://www.baidu.com?a=111&b=222想要获取url中的a,b参数,代码如下:function getParmFormUrl(name){ var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); var r = window.location.search.substr(1).match(reg); if (r != null) return decodeURI(r[2]); return null; }getParmFormUrl("a");//获取a参数的值getParmFormUrl("b");//获取b参数的值以上这篇获取url中用&隔开的参数实例(分享)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

面向对象的语言有一个标志,那就是他们都有类的概念,通过类可以创建任意多个具有相同属性和方法的对象。ECMAScript5中没有类的概念,因此它的对象和基于类的语言中的对象有所不同。Javascript生成对象的传统方法是通过构造函数来实现的function Person(name, age){ this.name = name; this.age = age; this.sayHello = function(){ return "Hello "+ this.name; }}var person = new Person("dahan",18);person.sayHello();//Hello dahan上述这种方式因为和Javascript中声明方法的形式一样,所以对象和方法的区分并不明显,很容易造成混淆。ES6引入了Class(类)的概念,我们通过ES6的语法进行创建对象的时候,可以像Java语法一样,使用关键字class,用来定义类。当然,这种语法的功能,通过ES5也都可以实现,它只是让类的定义更加清晰,更容易理解。//类的定义class Person { //ES6中新型构造器 constructor(name) { this.name = name; } //实例方法 sayName() { console.log("我的名字叫"+ this.name); }}//类的继承class Programmer extends Person { constructor(name) { //直接调用父类构造器进行初始化 super(name); } program() { cosnole.log("这是我的地盘"); }}//运行测试var person = new Person('lingxiao');var coder = new Programmer('coder');person.sayName();//我的名字叫lingxiaocoder.sayName();//我的名字叫codercoder.program();//这是我的地盘下面来注意讲述一下上述代码中出现的语法。constructorconstructor是类的默认方法,就像Java中的main方法一样,每个类都必须有constructor方法。在通过new实例化对象的时候,就会自动调用constructor方法,得到的也就是constructor返回的值。constructor默认返回当前类的实例对象(this),但是我们也可以指定另外一个对象,当然,这样就会导致实例化出来的对象,并不是当前类的实例。class Person { constructor(){ var ob = new Object(); return Ob; } sayHello(){ return "Hello World" }}var person = new Person();person.sayHello();//Uncaught TypeError: person.sayHello is not a function我们在实例化对象的时候,ES6规定我使用new关键字,如果直接调用,会当成函数来调用。class Person { constructor(name){ this.name = name; }};var person = Person("dahan");//Uncaught TypeError: Class constructor Person4 cannot be invoked without 'new'this在最开始的代码中,我们看到了this,this在类中指向的就是实例本身,但是如果我们在类的方法中使用了this,单独调用此方法的时候,就会出现错误。class Person{ constructor(name){ this.name = name; } sayHello() { return "Hello "+this.name }}var person = new Person("dahan");var sayHello = person.sayHello;sayHello();//Uncaught TypeError: Cannot read property 'name' of undefined针对这个我们可以很简单的在构造方法中绑定thisclass Person{ constructor(name){ this.name = name; this.sayHello = this.sayHello.call(this); } sayHello() { return "Hello "+this.name }}继承extend我们想要在一个类上扩展一些属性,但又不想修改原类,就用到了继承。//类的继承class Programmer extends Person { constructor(name,age) { this.age = age;//报错 //直接调用父类构造器进行初始化 super(name); } program() { cosnole.log("这是我的地盘"); }}使用继承的时候,需要用super关键字来调用父类,super(name)就呆逼啊调用父类的constructor方法。另外,我们使用的继承的时候,super关键字也帮我们改变了this的指向,所以我们必须要先调用super方法,然后才能使用this。ES6要求,子类的构造函数必须执行一次super函数,否则就会报错。最后class关键字的出现,也让Javascript看上去更加像一个面向对象语言,愿Javascript越变越好越易用。以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

焦点访谈

最新最热的文章

更多 >

COPYRIGHT (©) 2017 Copyright ©2017 腾博会官网 网站地图

联系我们

827570882

扫描二维码分享到微信