IOS修改webView背景透明以及IOS調用前台js的方法


工作上遇到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')"];
        
}

得到的返回值賦給變量進行使用。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM