項(xiàng)目需求:加載完成頁(yè)面之后不允許讓頁(yè)面放大或者縮小,
1.廢話就不多說(shuō)了,通過(guò)UIWebView的自帶屬性是沒(méi)有這個(gè)設(shè)置選項(xiàng)的/達(dá)不到預(yù)期效果。
2.只能通過(guò)頁(yè)面設(shè)置來(lái)完成
1.如果是本地的頁(yè)面資源,直接修改HTML頁(yè)面內(nèi)容,直接在Header標(biāo)簽內(nèi)添加一個(gè)標(biāo)簽屬性即可:
<meta name="viewport" content="width=device-width, initial-scale=1.0,maximum-scale=1.0, minimum-scale=1.0, user-scalable=no">
2.如果是加載的URL,可以通過(guò)WebView的在webViewDidFinishLoad的加載完成的代理方法中,
通過(guò)stringByEvaluatingJavaScriptFromString方法來(lái)動(dòng)態(tài)添加js代碼:
NSString *injectionJSString = @"var script = document.createElement('meta');"
"script.name = 'viewport';"
"script.content=\"width=device-width, initial-scale=1.0,maximum-scale=1.0, minimum-scale=1.0, user-scalable=no\";"
"document.getElementsByTagName('head')[0].appendChild(script);";
[webView stringByEvaluatingJavaScriptFromString:injectionJSString];
標(biāo)簽里的scale 值就是頁(yè)面的初始化頁(yè)面大小< initial-scale >和可伸縮放大最大< maximum-scale >和最小< minimum-scale >的的倍數(shù)译红。如果還有別的需求可自行設(shè)置,如果都為1表示初始化的時(shí)候顯示為原來(lái)大小,可縮放的大小都為原來(lái)的大小<即不可縮放>预茄。
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者