2022-08-13 分類(lèi): 手機(jī)網(wǎng)站建設(shè)
由于移動(dòng)互聯(lián)網(wǎng)行業(yè)的興起,很多公司和企業(yè)都開(kāi)始慢慢想通過(guò)手機(jī)互聯(lián)網(wǎng)挖掘客戶(hù)和宣傳自己的企業(yè)。成都網(wǎng)站建設(shè)的一些公司為了更好的服務(wù)于客戶(hù)資源,也逐漸將主營(yíng)業(yè)務(wù)慢慢轉(zhuǎn)向了手機(jī)網(wǎng)站建設(shè)方面,近期由于工作的需要也有幸去建設(shè)了一個(gè)比較簡(jiǎn)單的手機(jī)網(wǎng)站,在前面的文章《成都網(wǎng)站建設(shè)中手機(jī)網(wǎng)站建設(shè)定位并實(shí)現(xiàn)地圖標(biāo)記和附近商家實(shí)現(xiàn)方式》中也詳細(xì)的提到過(guò)該手機(jī)網(wǎng)站的一些簡(jiǎn)單功能,這篇文章中,我們?cè)敿?xì)介紹在進(jìn)行手機(jī)網(wǎng)站建設(shè)的過(guò)程中,遇到的一些常見(jiàn)問(wèn)題和處理方法。
成都網(wǎng)站建設(shè)中手機(jī)網(wǎng)站建設(shè)常見(jiàn)問(wèn)題和功能實(shí)現(xiàn)總結(jié)" src="/upload/pic18/201401211432565423.jpg" />
一、手機(jī)網(wǎng)站編碼形式和網(wǎng)站分辨率情況,網(wǎng)站meta標(biāo)簽書(shū)寫(xiě)技巧大家都知道,用手機(jī)瀏覽網(wǎng)站不同于用PC瀏覽網(wǎng)站,PC段的網(wǎng)站只需要將網(wǎng)站的寬度設(shè)置為一個(gè)固定的寬度,然后通過(guò)CSS代碼,調(diào)整為局中就可以了,而在手機(jī)上瀏覽網(wǎng)站不會(huì)存在網(wǎng)站局中的情況,都應(yīng)該遵循網(wǎng)站在任何手機(jī)上都要全屏顯示的情況,這里就需要對(duì)網(wǎng)站的代碼單獨(dú)設(shè)置meta標(biāo)簽。還有就是對(duì)于手機(jī)網(wǎng)站來(lái)說(shuō)一定要用的是html5的標(biāo)簽,因?yàn)槭謾C(jī)網(wǎng)站上的很多功能都是需要通過(guò)html5才能實(shí)現(xiàn)的。詳細(xì)的手機(jī)網(wǎng)站頭部代碼如下圖所示:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>成都網(wǎng)站建設(shè)redsoil1982.com.cn</title>
<meta charset="UTF-8">
<meta name="HandheldFriendly" content="True">
<meta http-equiv="format-detection" content="telephone=no">
<meta name="viewport" content="width=320,user-scalable=no">
<link href="{CSS_PATH}main320.css" type="text/css" rel="stylesheet">
<meta http-equiv="X-UA-Compatible" content="IE=Edge">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<meta name="apple-mobile-web-app-capable" content="yes">
</head>
移動(dòng)互聯(lián)網(wǎng)之所以如此火爆不僅僅是因?yàn)樗梢噪S時(shí)隨地的可以通過(guò)手機(jī)瀏覽互聯(lián)網(wǎng)的任何內(nèi)容,更重要的一點(diǎn)是他可以定位用戶(hù)手機(jī)的所在位置,然后通過(guò)用戶(hù)所在的位置信息獲取到用戶(hù)當(dāng)前位置周邊的一些商家、優(yōu)惠信息、加油站等等。當(dāng)然手機(jī)網(wǎng)站也可以實(shí)現(xiàn)這些功能,首先要做的就是需要通過(guò)網(wǎng)站對(duì)用戶(hù)進(jìn)行定位。網(wǎng)站定位原理是,通過(guò)載入谷歌地圖的API,然后獲取到用戶(hù)當(dāng)前所在位置的經(jīng)緯度,然后通過(guò)經(jīng)緯度將數(shù)據(jù)返回用戶(hù)具體位置,具體實(shí)現(xiàn)代碼如下:
①、引用谷歌地圖API的JS文件,(網(wǎng)絡(luò)上有很多,這個(gè)是目前發(fā)現(xiàn)可以返回值最全的一個(gè))
<script type="text/javascript" language="javascript" src="http://www.google.com/jsapi?key=_YOUR_GOOGLE_API_KEY_HERE_"></script>
②、通過(guò)HTML5的navigator.geolocation.getCurrentPosition方法,獲得當(dāng)前經(jīng)緯度
<script>
function getLocation(){
if (navigator.geolocation)
{
navigator.geolocation.getCurrentPosition(showPosition,showError);
}
}
function showPosition(position)
{
var lat = position.coords.latitude; //此處是當(dāng)前位置的經(jīng)度信息,可通過(guò)alert直接輸出,或通過(guò)URL方法、AJAX方法傳遞給PHP。
var lng = position.coords.longitude; //此處是當(dāng)前位置的緯度信息,可通過(guò)alert直接輸出,或通過(guò)URL方法、AJAX方法傳遞給PHP。
if( google.loader.ClientLocation.address.city) {
var locationCity = google.loader.ClientLocation.address.city; //此處是獲得當(dāng)前位置所在城市的名字,返回當(dāng)前位置的英文全拼。
var chengshi = locationCity.toLowerCase(); //此處是獲得當(dāng)前位置所在城市的名字,返回當(dāng)前位置的英文全拼。
}
}
function showError(error)
{
switch(error.code)
{
case error.PERMISSION_DENIED:
x.innerHTML="User denied the request for Geolocation."
break;
case error.POSITION_UNAVAILABLE:
x.innerHTML="Location information is unavailable."
break;
case error.TIMEOUT:
x.innerHTML="The request to get user location timed out."
break;
case error.UNKNOWN_ERROR:
x.innerHTML="An unknown error occurred."
break;
}
}
</script>
①、PHP版本:
<?php
function rad($d)
{
return $d * 3.1415926535898 / 180.0;
}
function getdistance($lng1,$lat1,$lng2,$lat2)//根據(jù)經(jīng)緯度計(jì)算距離
{
//將角度轉(zhuǎn)為狐度
$radLat1=deg2rad($lat1);
$radLat2=deg2rad($lat2);
$radLng1=deg2rad($lng1);
$radLng2=deg2rad($lng2);
$a=$radLat1-$radLat2;//兩緯度之差,緯度<90
$b=$radLng1-$radLng2;//兩經(jīng)度之差緯度<180
$s=2*asin(sqrt(pow(sin($a/2),2)+cos($radLat1)*cos($radLat2)*pow(sin($b/2),2)))*6378.137;
return $s;
}
echo round(getdistance($lat1, $lng1, $lat2, $lng2)*1000,2);
?>
②、MYSQL版本:
這個(gè)是將mysql查詢(xún)出的信息,按照距離進(jìn)行排序:
SELECT * FROM $zhekou order by 2 * 6378.137* ASIN(SQRT(POW(SIN(PI()*($lat1-lat)/360),2)+COS(PI()*$lat1/180)* COS(lat * PI()/180)*POW(SIN(PI()*($lng1-lng)/360),2))) asc
其中:2 * 6378.137* ASIN(SQRT(POW(SIN(PI()*($lat1-lat)/360),2)+COS(PI()*$lat1/180)* COS(lat * PI()/180)*POW(SIN(PI()*($lng1-lng)/360),2)))
就是兩點(diǎn)見(jiàn)的距離。
三、PHP獲取漢字首字母,并將漢字按照首字母進(jìn)行分類(lèi)<?php
function getfirstchar($s0){
$firstchar_ord=ord(strtoupper($s0{0}));
if (($firstchar_ord>=65 and $firstchar_ord<=91)or($firstchar_ord>=48 and $firstchar_ord<=57)) return $s0{0};
//$s=iconv("UTF-8","gb2312", $s0);
$s=$s0;
$asc=ord($s{0})*256+ord($s{1})-65536;
if($asc>=-20319 and $asc<=-20284)return "A";
if($asc>=-20283 and $asc<=-19776)return "B";
if($asc>=-19775 and $asc<=-19219)return "C";
if($asc>=-19218 and $asc<=-18711)return "D";
if($asc>=-18710 and $asc<=-18527)return "E";
if($asc>=-18526 and $asc<=-18240)return "F";
if($asc>=-18239 and $asc<=-17923)return "G";
if($asc>=-17922 and $asc<=-17418)return "H";
if($asc>=-17417 and $asc<=-16475)return "J";
if($asc>=-16474 and $asc<=-16213)return "K";
if($asc>=-16212 and $asc<=-15641)return "L";
if($asc>=-15640 and $asc<=-15166)return "M";
if($asc>=-15165 and $asc<=-14923)return "N";
if($asc>=-14922 and $asc<=-14915)return "O";
if($asc>=-14914 and $asc<=-14631)return "P";
if($asc>=-14630 and $asc<=-14150)return "Q";
if($asc>=-14149 and $asc<=-14091)return "R";
if($asc>=-14090 and $asc<=-13319)return "S";
if($asc>=-13318 and $asc<=-12839)return "T";
if($asc>=-12838 and $asc<=-12557)return "W";
if($asc>=-12556 and $asc<=-11848)return "X";
if($asc>=-11847 and $asc<=-11056)return "Y";
if($asc>=-11055 and $asc<=-10247)return "Z";
return null;
}
echo getfirstchar(成都騰飛網(wǎng)絡(luò));
?>
以上是這次在進(jìn)行手機(jī)網(wǎng)站建設(shè)的過(guò)程中遇到的一些比較特殊的問(wèn)題,順便記錄一下,以備下次使用。對(duì)于沒(méi)有過(guò)類(lèi)似開(kāi)發(fā)經(jīng)驗(yàn)或者正準(zhǔn)備進(jìn)行手機(jī)網(wǎng)站開(kāi)發(fā)的朋友一個(gè)好的參考,盡量的少走一些彎路,直接拿過(guò)去使用就可以了。
本文相關(guān)代碼下載:Ⅰ、手機(jī)網(wǎng)站定位實(shí)現(xiàn)代碼
Ⅱ、通過(guò)兩點(diǎn)之間的經(jīng)緯度,計(jì)算兩點(diǎn)間的距離代碼PHP版本
Ⅲ、通過(guò)兩點(diǎn)之間的經(jīng)緯度,計(jì)算兩點(diǎn)間的距離代碼MYSQL版本
Ⅳ、通過(guò)PHP獲取漢字首字母,并進(jìn)行排序代碼
網(wǎng)頁(yè)名稱(chēng):成都網(wǎng)站建設(shè)中手機(jī)網(wǎng)站建設(shè)常見(jiàn)問(wèn)題和功能實(shí)現(xiàn)總結(jié)
當(dāng)前鏈接:http://redsoil1982.com.cn/news28/189528.html
網(wǎng)站建設(shè)、網(wǎng)絡(luò)推廣公司-創(chuàng)新互聯(lián),是專(zhuān)注品牌與效果的網(wǎng)站制作,網(wǎng)絡(luò)營(yíng)銷(xiāo)seo公司;服務(wù)項(xiàng)目有網(wǎng)站建設(shè)、手機(jī)網(wǎng)站建設(shè)等
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容