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')"];
        
}

得到的返回值赋给变量进行使用。

大神勿喷,小弟仅仅是遇到这个问题,做一下记录而已。。。

 

转载于:https://www.cnblogs.com/zzuIvy/p/iosGetjsFunciton.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值