移動(dòng)網(wǎng)站開發(fā)中常用的10段JavaScript代碼
1、如果網(wǎng)頁是在iPhone或Android瀏覽器中查看,則在主體元素中添加“iPhone”或“Android” 類名
- if (navigator.userAgent.match(/iPhone/i)) {
 - $('body').addClass('iPhone');
 - } else if (navigator.userAgent.match(/Android/i)) {
 - $('body').addClass('Android');
 - }
 
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、移除瀏覽器地址欄
- window.scrollTo(0, 1);
 
3、防止網(wǎng)頁觸摸滾動(dòng)
- notouchmove = function(event) {
 - event.preventDefault();
 - }
 - <div data-role="page" id="home" ontouchmove="notouchmove(event);">
 - ...
 - </div>
 
4、當(dāng)橫向?yàn)g覽時(shí)顯示信息
- var updateorientation = function (){
 - var classname = '',
 - top = 100;
 - switch(window.orientation){
 - case 0:
 - classname += "normal";
 - break;
 - case -90:
 - classname += "landscape";
 - break;
 - case 90:
 - classname += "landscape";
 - break;
 - }
 - if (classname == 'landscape') {
 - if ($('#overlay').length === 0) {
 - window.scrollTo(0, 1);
 - $('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>');
 - }
 - } else {
 - $('#overlay').remove();
 - }
 - };
 - Usage:
 - var supportsOrientationChange = "onorientationchange" in window,
 - orientationEvent = supportsOrientationChange ? "orientationchange" : "resize";
 - window.addEventListener(orientationEvent, function() {
 - updateorientation();
 - }, false);
 
5、顯示部分描述信息,當(dāng)點(diǎn)擊時(shí)顯示完整信息
- var truncatedesc = function(trunc, len) {
 - if (trunc) {
 - var org = trunc;
 - if (trunc.length > len) {
 - trunc = trunc.substring(0, len);
 - trunc = trunc.replace(/w+$/, '');
 - trunc = '<span class="truncated">' + trunc;
 - trunc += '<strong class="more-description">...</strong></span>';
 - trunc += '<span class="original" style="display: none;">' + org + '</span>';
 - }
 - $('.truncated').live("touchstart touchend", function() {
 - $(this).closest('div').find('.original').show();
 - $(this).closest('div').find('.truncated').hide();
 - return false;
 - });
 - return trunc;
 - }
 - };
 - Usage:
 - truncatedesc(item.description, 100);
 
6、收到成功的Ajax請求時(shí),重定向到另一個(gè)頁面(jQuery mobile)
- var ajaxurl = ‘http://…’; // Your web service URL
 - $.ajax({
 - url: ajaxurl,
 - type: 'GET',
 - processData: false,
 - contentType: "application/json",
 - dataType: "jsonp",
 - success: function(data) {
 - $.mobile.changePage("results.html");
 - },
 - error: function() {
 - alert('Error!');
 - }
 - });
 
7、從列表視圖的鏈接中刪除活動(dòng)狀態(tài)(jQuery mobile)
- $('div').live('pageshow', function (event, ui) {
 - $('[data-role=listview] li').removeClass("ui-btn-active");
 - });
 
8、從下拉選擇中禁用默認(rèn)的jQuery mobile樣式(jQuery mobile)
- $(document).bind("mobileinit", function(){
 - $.mobile.page.prototype.options.keepNative = "select";
 - });
 
9、動(dòng)態(tài)更新列表視圖(jQuery mobile)
- var output = '<li><img src="' + item.image + '" alt="' + item.title + '" />';
 - output += '<h3><a href="' + item.url + '">' + item.title + '</a></h3>';
 - output += '</li>';
 - $('#mylistul').append(output).listview('refresh');
 
10、動(dòng)態(tài)添加表單輸入和應(yīng)用默認(rèn)樣式(jQuery mobile)
- var html = '<input type="search" name="suburb" id="suburb" placeholder="Enter suburb" />';
 - $('#searchform').append(html);
 - $('#suburb').textinput();
 
原文:http://qing.weibo.com/1609119537/5fe93731330004ep.html
【編輯推薦】















 
 
 
 
 
 
 