標籤:
工作上遇到IOS的webView中的H5頁面需要透明以顯示webView的背景顏色。用H5自身的透明度的css樣式或者js控制背景顏色及透明度都打不到想要的效果,最後還是通過ios設定webView中的body顏色及透明度來實現的,具體代碼如下:
-(void) webViewDidFinishLoad:(UIWebView *)webView{ [webView stringByEvaluatingJavaScriptFromString:@"document.getElementsByTagName(‘body‘)[0].style.background=‘rgba(0,0,0,0)‘"];}
於是H5頁面就透明並且顯示webView的背景顏色了。Android的目前還沒有研究怎麼去設定webView中的H5頁面的背景。後續有時間了研究一下。
順便提一下IOS調用前台頁面js方法的寫法:
首先要在頁面內添加定義一個js方法,並且return一個傳回值,例如:
//查看更多 ios調用方法function getParameterForIOS (parameter) { var result=""; var city=sessionStorage.getItem("usedCarCity001"); var is_type=sessionStorage.getItem("usedCarCertification002"); if(is_type=="true"){ is_type = 0; }else{ is_type = 1; } //city if (parameter=="city") { result=city; } //is_type if (parameter=="certification") { result=is_type; } return result;}
然後在IOS中,webView載入開始或者結束的時候調用該方法,例如:
- (void)webViewDidStartLoad:(UIWebView *)webView{ NSString *certification = [webView stringByEvaluatingJavaScriptFromString:@"getParameterForIOS(‘certification‘)"]; }
得到的傳回值賦給變數進行使用。
IOS修改webView背景透明以及IOS調用前台js的方法