中文字幕亚洲欧美一区_国产JIZZJIZZ免费看_亚洲av大码在线_亚洲黄色一级毛片_野花影视大全在线观看免费_欧美一区二区三区免费不卡_欧美日韩国产在线精品_国产福利盒子在线看片_精品国产人成在线_日韩欧美动漫一区在线

Mobile phone web technology智能手機網(wǎng)站技術(shù)

手機觸屏網(wǎng)站開發(fā)技巧總結(jié)

偵測iPhone/iPod

開發(fā)特定設(shè)備的移動網(wǎng)站,首先要做的就是設(shè)備偵測了。下面是使用Javascript偵測iPhone/iPod的UA,然后轉(zhuǎn)向到專屬的URL。

Code:

if((navigator.userAgent.match(/iPhone/i))|| (navigator.userAgent.match(/iPod/i))) {

if(document.cookie.indexOf(“iphone_redirect=false”) == -1) {

window.location = “http://www.8mart.cn”;

}

}

雖然Javascript是可以在水果設(shè)備上運行的,但是用戶還是可以禁用。它也會造成客戶端刷新和額外的數(shù)據(jù)傳輸,所以下面是服務(wù)器端偵測和轉(zhuǎn)向:

Code:

if(strstr($_SERVER['HTTP_USER_AGENT'],’iPhone’)|| strstr($_SERVER['HTTP_USER_AGENT'],’iPod’)) {

header(‘Location: http://www.8mart.cn/iphone’);

exit();

}

設(shè)置viewpoint和屏幕等寬

如果不設(shè)置viewpoint,網(wǎng)站在viewpoint就會顯示成縮略形式。如果你專門為iPhone/iPod開發(fā)網(wǎng)站,這一條很有用,而且很簡單,只需要插入到head里就可以:

Code:

<meta name=”viewport”content=”width=device-width; initial-scale=1.0; maximum-scale=1.0;”>

使用iPhone規(guī)格圖標

如果你的用戶將你的網(wǎng)站添加到home screen,iPhone會使用網(wǎng)站的縮略圖作為圖標。然而你可以提供一個自己設(shè)計的圖標,這樣當然更好。圖片是57×57大小,png格式。不需要自己做圓角和反光,系統(tǒng)會自動完成這些工作。然后將下面這條加入head中:

Code:

<rel=”apple-touch-icon”href=”images/youricon.png”/>

阻止旋轉(zhuǎn)屏幕時自動調(diào)整字體大小

-webkit-text-size-adjust是webkit的私有css:

Code:

html, body, form, fieldset, p, div, h1, h2,h3, h4, h5, h6 {-webkit-text-size-adjust:none;}

偵測設(shè)備旋轉(zhuǎn)方向

iPhone可以在橫屏狀態(tài)下瀏覽網(wǎng)頁,有時候你會想知道用戶設(shè)備的手持狀態(tài)來增強可用性和功能。下面一段Javascript可以判斷出設(shè)備向哪個方向旋轉(zhuǎn),并且替換css:

Code:

window.onload = function initialLoad(){updateOrientation();}

function updateOrientation(){

var contentType = “show_”;

switch(window.orientation){

case 0:

contentType += “normal”;

break;

case -90:

contentType += “right”;

break;

case 90:

contentType += “l(fā)eft”;

break;

case 180:

contentType += “flipped”;

break;

}

document.getElementById(“page_wrapper”).setAttribute(“class”,contentType);

}

iPhone才識別的CSS

如果不想設(shè)備偵測,可以用CSS媒體查詢來專為iPhone/iPod定義樣式。

Code:

@media screen and (max-device-width: 480px){}

CSS3媒體查詢

對于CSS3的媒體(media)查詢,iPhone和iPad是不同的。通過這個技術(shù),可以對設(shè)備不同的握持方向應(yīng)用不同的樣式,增強功能和體驗。

iPhone是通過屏幕最大寬度來偵測的。是這樣:

Code:

<link rel=”stylesheet” media=”screen and(max-width: 320px)” href=”portrait.css” />
<link rel=”stylesheet” media=”screen and (min-width: 321px)”href=”landscape.css” />
而iPad有點不同,它直接使用了媒體查詢中的orientation屬性。是這樣:

Code:

<link rel=”stylesheet” media=”screen and(orientation:portrait)” href=”portrait.css” />
<link rel=”stylesheet” media=”screen and (orientation:landscape)”href=”landscape.css” />
之后只要將不同的樣式分別定義出來就可以了。

縮小圖片

網(wǎng)站的大圖通常寬度都超過480像素,如果用前面的代碼限制了縮放,這些圖片在iPhone版顯示顯然會超過屏幕。好在iPhone機能還夠,我們可以用CSS讓iPhone自動將大圖片縮小顯示。

Code:

@media screen and (max-device-width:480px){

img{max-width:100%;height:auto;}

}

注意如果原圖片非常大,或一個頁面非常多圖,最好還是在服務(wù)器端縮放到480像素寬,iPhone只需要在正常瀏覽時縮略到320像素。這樣不會消耗太多流量和機能。

默認隱藏工具欄

iPhone的瀏覽器工具欄會在頁面最頂端,卷動網(wǎng)頁后才隱藏。這樣在加載網(wǎng)頁完成后顯得很浪費空間,特別是橫向屏幕時。我們可以讓它自動卷動上去。

Code:

<scripttype=”application/x-javascript”>
addEventListener(“l(fā)oad”, function()
{
setTimeout(hideAddressbar, 0);
}, false);

function hideAddressbar()
{
window.scrollTo(0, 1);
}
</script>

模擬:hover偽類

因為iPhone并沒有鼠標指針,所以沒有hover事件。那么CSS :hover偽類就沒用了。但是iPhone有Touch事件,onTouchStart 類似 onMouseOver,onTouchEnd 類似 onMouseOut。所以我們可以用它來模擬hover。使用Javascript:

Code:

var myLinks =document.getElementsByTagName(‘a(chǎn)’);

for(var i = 0; i < myLinks.length; i++){

myLinks[i].addEventListener(’touchstart’,function(){this.className = “hover”;}, false);

myLinks[i].addEventListener(’touchend’,function(){this.className = “”;}, false);

}

然后用CSS增加hover效果:

Code:

a:hover, a.hover { /* 你的hover效果 */ }

這樣設(shè)計一個鏈接,感覺可以更像按鈕。并且,這個模擬可以用在任何元素上。

iphone fixed positioning

Code:

關(guān)于漂浮定位,測試后發(fā)現(xiàn) { position: fixed; } 不能為其用,
可以改為 { position:absolute; } 來實現(xiàn),可以使用iphone看下DEMO:iphone-fixed-positioning

Touch Events
iPhone 是使用觸屏的方式,所以就需要有手觸屏和離開的時候的事件機制,幸好,iPhone做好了這方面的工作,提供了四個處理touch的事件:touchstart,touchend,touchmove,touchcancel(when the system cancels the touch) 。

Gestures
即是指兩只手指接觸屏幕的時候縮放或者旋轉(zhuǎn)的效果,對于偵聽gestures,iPhone也有三個事件:gesturestart,gestureend,gesturechange。
同時事件參數(shù)event有兩個屬性:scale,rotate。Scale的中間值是1,大于1表示放大,小于1表示縮小。

0
選擇一個心情
網(wǎng)站建設(shè) 網(wǎng)站制作 網(wǎng)頁設(shè)計 網(wǎng)站建設(shè)公司 沈陽網(wǎng)站建設(shè) 沈陽網(wǎng)頁設(shè)計 高端網(wǎng)站設(shè)計 沈陽網(wǎng)站制作公司 高端網(wǎng)站建設(shè) 沈陽網(wǎng)絡(luò)公司 沈陽網(wǎng)站制作
沈陽易勢科技有限公司 © 2006-2013 , All rights reserved. 遼B2-20150173-8