我想从外部服务中显示产品规格。为此,我必须将以下JS字符串传递给Webview。
<!DOCTYPE html>
<html>
<body>
<div id="flix-minisite"></div>
<div id="flix-inpage"></div>
<script
type="text/javascript"
src="http://media.flixfacts.com/js/loader.js"
data-flix-distributor="12612"
data-flix-language="id"
data-flix-brand="Samsung"
data-flix-mpn="UA55JU6600KPXD"
data-flix-ean=""
data-flix-sku=""
data-flix-button="flix-minisite"
data-flix-inpage="flix-inpage"
data-flix-button-image=""
data-flix-fallback-language="e2"
data-flix-price=""
async>
</script>
</body> </html>
我添加了以下方法:
webview.NavigateToString("htmlString");
添加此项只会显示服务中的文字,但不会显示图像和视频。
预期结果: http://media.flixcar.com/delivery/minisite/show/12612/id/957752
我做错了什么?
答案 0 :(得分:0)
对我来说,它不起作用,因为以下脚本未正确添加到您的html页面中:
<script type="text/javascript" src="//media.flixcar.com/delivery/static/inpage/9/js/lazy.js"></script>
它由脚本http://media.flixcar.com/delivery/static/inpage/9/js/append.js
动态添加。
网址应为http://media.flixcar.com/delivery/static/inpage/9/js/lazy.js
,以便webview正确加载(除了Edge浏览器之外)。
我还认为您需要更新每个图像属性。目前,它们也是在没有协议的情况下添加的,并非所有浏览器都支持(对我而言,它只适用于Chrome)。
<div class="flix-feature-image">
<img src="//media.flixcar.com/delivery/static/mobile/standard/img/loading_icon.gif"
data-srcset="//media.flixcar.com/f360cdn/Samsung-1601328499-id-feature-uhd-ju6600-ua65ju6600kpxd-52938564 2x, //media.flixcar.com/f360cdn/Samsung-1601328499-id-feature-uhd-ju6600-ua65ju6600kpxd-52938564 770w">
</div>
添加协议将解决问题:
<div class="flix-feature-image">
<img src="http://media.flixcar.com/delivery/static/mobile/standard/img/loading_icon.gif"
data-srcset="http://media.flixcar.com/f360cdn/Samsung-1601328499-id-feature-uhd-ju6600-ua65ju6600kpxd-52938564 2x, http://media.flixcar.com/f360cdn/Samsung-1601328499-id-feature-uhd-ju6600-ua65ju6600kpxd-52938564 770w">
</div>