移动网站开发中常用的10段JavaScript代码

news/2024/5/20 15:30:36/文章来源:https://blog.csdn.net/weixin_34357436/article/details/86092380
在开发移动网站过程中,有一些Javascript代码会经常用到。以下是10段常用的JavaScript代码。需要注意的是某几段代码需要jQuery mobile framework支持。

1.如果网页是在iPhone或Android浏览器中查看,则在主体元素中添加“iPhone”或“Android” 类名

Javascript代码
  1. if (navigator.userAgent.match(/iPhone/i)) {  
  2.     $('body').addClass('iPhone');  
  3. } else if (navigator.userAgent.match(/Android/i)) {  
  4.          $('body').addClass('Android');  
  5. }  


iPhone用户浏览示例:

Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en) AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A537a Safari/419.3
Mozilla/5.0 (iPhone; U; XXXXX like Mac OS X; en) AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A477d Safari/419.3

Android用户浏览示例:

Mozilla/5.0 (Linux; U; Android 2.2; en-us; Nexus One Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1
Mozilla/5.0 (Linux; U; Android 1.6; en-gb; Dell Streak Build/Donut AppleWebKit/528.5+ (KHTML, like Gecko) Version/3.1.2 Mobile Safari/ 525.20.1
Mozilla/5.0 (Linux; U; Android 2.1-update1; de-de; HTC Desire 1.19.161.5 Build/ERE27) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17
Mozilla/5.0 (Linux; U; Android 2.2; en-us; DROID2 GLOBAL Build/S273) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1
Mozilla/5.0 (Linux; U; Android 2.2; en-gb; GT-P1000 Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1
Mozilla/5.0 (Linux; U; Android 2.1-update1; de-de; E10i Build/2.0.2.A.0.24) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17

2. 移除浏览器地址栏

Javascript代码
  1. window.scrollTo(0, 1);  


3. 防止网页触摸滚动

Javascript代码
  1. notouchmove = function(event) {  
  2.     event.preventDefault();  
  3. }  
  4. <div data-role="page" id="home" ontouchmove="notouchmove(event);">  
  5. ...  
  6. </div>  


4. 当横向浏览时显示信息

Javascript代码
  1. var updateorientation = function (){  
  2.     var classname = '',  
  3.     top = 100;  
  4.     switch(window.orientation){  
  5.         case 0:  
  6.         classname += "normal";  
  7.         break;  
  8.   
  9.         case -90:  
  10.         classname += "landscape";  
  11.         break;  
  12.   
  13.         case 90:  
  14.         classname += "landscape";  
  15.         break;  
  16.   
  17.     }  
  18.   
  19.     if (classname == 'landscape') {  
  20.         if ($('#overlay').length === 0) {  
  21.             window.scrollTo(0, 1);  
  22.             $('body').append('<div id="overlay" style="width: 100%; height:' + $(document).height() + 'px"><span style="top: ' + top + 'px">Landscape view is not supported for this page.</span></div>');  
  23.         }  
  24.     } else {  
  25.         $('#overlay').remove();  
  26.     }  
  27. };  
  28. Usage:  
  29.   
  30. var supportsOrientationChange = "onorientationchange" in window,  
  31. orientationEvent = supportsOrientationChange ? "orientationchange" : "resize";  
  32.   
  33. window.addEventListener(orientationEvent, function() {  
  34.     updateorientation();  
  35. }, false);  


5.显示部分描述信息,当点击时显示完整信息

Javascript代码
  1. var truncatedesc = function(trunc, len) {  
  2.     if (trunc) {  
  3.       var org = trunc;  
  4.   
  5.       if (trunc.length > len) {  
  6.         trunc = trunc.substring(0, len);  
  7.         trunc = trunc.replace(/w+$/, '');  
  8.   
  9.         trunc = '<span class="truncated">' + trunc;  
  10.         trunc += '<strong class="more-description">...</strong></span>';  
  11.         trunc += '<span class="original" style="display: none;">' + org + '</span>';  
  12.       }  
  13.   
  14.       $('.truncated').live("touchstart touchend", function() {  
  15.         $(this).closest('div').find('.original').show();  
  16.         $(this).closest('div').find('.truncated').hide();  
  17.         return false;  
  18.       });  
  19.   
  20.       return trunc;  
  21.     }  
  22. };  
  23. Usage:  
  24.   
  25. truncatedesc(item.description, 100);  


6. 收到成功的Ajax请求时,重定向到另一个页面(jQuery mobile)

Javascript代码
  1. var ajaxurl = ‘http://…’; // Your web service URL  
  2.   
  3. $.ajax({  
  4.     url: ajaxurl,  
  5.     type: 'GET',  
  6.     processData: false,  
  7.     contentType: "application/json",  
  8.     dataType: "jsonp",  
  9.     success: function(data) {  
  10.         $.mobile.changePage("results.html");  
  11.     },  
  12.     error: function() {  
  13.         alert('Error!');  
  14.     }  
  15. });  


7. 从列表视图的链接中删除活动状态(jQuery mobile)


Javascript代码
  1. $('div').live('pageshow', function (event, ui) {  
  2.     $('[data-role=listview] li').removeClass("ui-btn-active");  
  3. });  


8. 从下拉选择中禁用默认的jQuery mobile样式(jQuery mobile)

Javascript代码
  1. $(document).bind("mobileinit", function(){  
  2.     $.mobile.page.prototype.options.keepNative = "select";  
  3. });  


9. 动态更新列表视图(jQuery mobile)

Javascript代码
  1. var output  = '<li><img src="' + item.image + '" alt="' + item.title + '" />';  
  2. output += '<h3><a href="' + item.url + '">' + item.title + '</a></h3>';  
  3. output += '</li>';      
  4.   
  5. $('#mylistul').append(output).listview('refresh');  


10. 动态添加表单输入和应用默认样式(jQuery mobile)

Javascript代码
  1. var html = '<input type="search" name="suburb" id="suburb" placeholder="Enter suburb" />';  
  2. $('#searchform').append(html);  
  3. $('#suburb').textinput();  



推荐书籍

下面两本关于HTML5和jQuery的书将有助于你理解和使用jQuery mobile框架。



HTML5: Up and Running



jQuery: Novice to Ninja

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_701901.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

构建百万访问量电子商务网站之LVS负载均衡(前端四层负载均衡器)[连载之电子商务系统架构]...

构建百万访问量电子商务网站之LVS负载均衡(前端四层负载均衡器)[连载之电子商务系统架构] 版本&#xff1a;V1 出处&#xff1a;http://jimmyli.blog.51cto.com/我站在巨人肩膀上Jimmy Li 作者&#xff1a;Jimmy Li 关键词&#xff1a;电子商务&#xff0c;系统架构&#xff0c…

html研究中心,seo研究中心 教程:认识HTML、css的重要性-专业SEO技

掌握HTML、css的重要性-专业SEO初级教程(27)依据之前的学习&#xff0c;确信大家早就对SEO有着一定的掌握。今天起大伙儿将正式开始SEO的学习。看到这里一些朋友或许有那般的疑虑&#xff0c;大伙儿并并不是要学习SEO吗&#xff1f;为什么讲解HTML的一些专业技能呢&#xff1f;…

SEO

SEO Search Engine Optimization :搜索引擎优化 增加被收录可能性争取在搜索结果中排名前列增加搜索引擎关键词中的排名免费方式,SEM为付费方式SEO基本知识 IP PVUV独立IP访问量 页面点击量或浏览量独立访客数&#xff08;针对客户端&#xff09;IP与UV的区别&#xff1a;同一个…

word在线解密_实用技能 | 5款免费在线转换PDF的网站

5款免费在线转换PDF的网站PDF在我们日常学习工作中用途都非常广泛&#xff0c;我们经常会有将下载的PDF文档转换为WORD或EXCEL等其他格式的文档&#xff0c;在我们经常接触到的文件都是付费的&#xff0c;使用起来需要会员&#xff0c;今天小编就为大家整理了几个免费在线转换P…

页面怎么创建一个数组_怎么创建一个企业网站?

怎么创建一个企业网站?互联网时代下&#xff0c;很多企业都纷纷搭建网站&#xff0c;网站不仅可以提高企业形象&#xff0c;还可以为企业带来盈利&#xff0c;那么怎么创建一个企业网站呢?下面小编来告诉你怎么搭建企业网站。1、网站定位做好企业网站建设的第一步是网站定位&…

bluePen – 使用在线 CSS 编辑器美化你的网站

BluePen 是一款非常强大的样式编辑工具&#xff0c;甚至可以轻松地安装在一个动态的网站中。一旦你已经安装了它&#xff0c;你就可以在任何时间&#xff0c;任何地方修改样式表&#xff0c;一切修改将实时更新到您的浏览器&#xff08;但不是线上网站&#xff09;&#xff0c;…

IIS 之 添加绑定域名 或 设置输入IP直接访问网站

1、打开IIS&#xff0c;右键站点 → 编辑绑定&#xff0c;弹出“网站绑定”窗口&#xff0c;如下图&#xff1a;2、点击“添加”&#xff0c;弹出“添加网站绑定”窗口&#xff0c;如下图&#xff1a;注意&#xff1a;若想输入 IP 地址直接访问&#xff0c;则可以有以下两种设置…

mysql和redis统计网站活跃度,最代码网站用户私信列表采用mysql union查询优化为Redis查询的经验和相关代码片段分享...

由于用户和私信的数据量逐渐增加&#xff0c;查询用户和其他用户的私信合并排重排序的sql语法给mysql带来了很大的压力&#xff0c;springdata jpa的hql查询语法如下&#xff1a;select id from (select id,target_id,case when user_id?1 and type?2 then sender else recei…

地址做域名时不能加端口_当你访问XXX网站时,从访问到内容返回呈现,中间发生了什么?...

想必不少小伙伴面试过程中&#xff0c;会遇到「当键入网址后&#xff0c;到网页显示&#xff0c;其间发生了什么」的面试题。这次&#xff0c;小林我带大家一起探究下&#xff0c;一个数据包在网络中的心路历程。每个阶段都有数据包的「心路历程」&#xff0c;我们一起看看它说…

创立一个网站的前前后后(起因,域名,云平台,备案,CDN等等)(1)

起因 写完《完美软件开发&#xff1a;方法与逻辑》这书后&#xff0c;原本想继续写书的&#xff0c;可出来参加了些社区活动后&#xff0c;我发现我写的书大家评价还行&#xff0c;但其实不太理解。而接下来想写的书更加抽象点&#xff0c;准备叫《管理的解析》&#xff0c;我一…

15款最好的网站音乐播放器

在互联网上有很多的脚本和插件&#xff0c;可以很容易将音乐播放功能集成到网站&#xff0c;以下是15款最好的网站音乐播放器。 Flash MP3 Player Flash MP 3 player is free script which can easily be embedded into the desired section of your web page. Its customizat…

鸿蒙应用开发在线体验官网,华为鸿蒙 HarmonyOS 应用开发在线体验网站上线

原标题&#xff1a;华为鸿蒙 HarmonyOS 应用开发在线体验网站上线IT之家 4 月 22 日消息 华为 HarmonyOS 应用开发在线体验网站现已上线。开发者可以通过在线体验“To-Do List”Demo&#xff0c;了解 HarmonyOS“一次开发、多设备部署”特性&#xff0c;体验 HarmonyOS 跨设备应…

html5 静态网页 线程,HTML5 Web Workers之网站也能多线程的实现

Web Workers 是在HTML5中新增的&#xff0c;用来在web应用程序中实现后台处理的一种技术在HTML4中&#xff0c;js创建的程序都是单线程的&#xff0c;如果花费时间比较长的话web界面就会长时间没有响应&#xff0c;最恶劣的情况还会跳出一个脚本提示框&#xff1a;提示脚本运行…

做服务器_码迷SEO:细数那些做SEO巨坑的服务器们

这是码迷SEO的第51篇原创这两天又有摩天楼的用户来找码迷看网站情况&#xff0c;说是网站坚持做好原创、做好配图、做好体验&#xff0c;是典型的三好学生网站。但是做了好长时间了&#xff0c;又没有蜘蛛、又没有排名、又没有流量&#xff0c;是典型的贫苦户呢。码迷也看了好多…

同一个网站别人能打开我打不开_做网站建设需要注意的五大事项

全国起码有上万计能提供做网站建设的公司和团队乃至个人&#xff0c;而绝大多数建的网站只是外表好看罢了。但是&#xff0c;如果网站是企业网站&#xff0c;光好看又有什么用呢&#xff1f;如果搜索引擎不认可&#xff0c;关键词排名就别指望了&#xff0c;潜在客户也将很难找…

手机号 imsi tmsi_抓取网站访客手机号

网站每天有几十几百上千访客&#xff0c;但咨询了解的不到5%&#xff0c;能够看到你广告并进行访问的网民肯定是有需求的&#xff0c;可选择与哪家合作&#xff0c;因素有很多&#xff0c;与其被动等待不如主动把流失的客户拉回来。火眼访客抓取系统是专为企业量身定制的移动端…

旅游网站的主页代码_一个在优化的网站主页内容应该如何设计?

现在搜索引擎上面的网站只要是互联网行业的网站都是做了优化的只能说是效果好与不好&#xff0c;只要是注重做优化的网站都会非常重视网站主页的设计&#xff0c;那么一个在优化的网站主页内容应该如何设计呢&#xff1f;接下来我们就来了解一下&#xff1a;网站标志应该在每一…

Amh/Nginx更改网站根目录

2019独角兽企业重金招聘Python工程师标准>>> 网站根目录是由Nginx的配置文件指定的。更改Amh虚拟主机的网站根目录&#xff0c;需要手动修改/usr/local/nginx/conf/vhost/下的域名.conf文件&#xff1a; 1.找到 server {...root /home/wwwroot/yourDomain/oldDirect…

c语言mysql源代码,永盈会-官方网站

SLF4J1.7一个日志模板&#xff0c;从traceback打印异常受启发做的模板&#xff0c;可被pycharm esclip sublime等ide识别和跳转。安卓构架组件——向项目添加组件(Adding Components to your Project)永盈会-官方网站。VS2017中使用ObjectARX 2019 wizard的 ArxWizMFCSupport向…

微型计算机的硬盘电源,自己动手估算电脑的功率 | 微型计算机官方网站 MCPlive.cn...

本来装一台电脑该配多大功率的电源是一个非常简单的问题&#xff0c;但不少人仍不得不求助于专家。是什么原因造就了这一难题&#xff1f;怎样轻松计算自己的电脑功耗&#xff1f;相信这是很多用户迫切想要知道的&#xff0c;本文就是要解决这个问题。最近论坛讨论电源选购的帖…