2015-11-20 62 views
2

我想隐藏我嵌入到React Native WebView中的特定页面的标题。目前,我用这样的事情,动态删除页眉:在页面呈现前将JavaScript或CSS注入React Native WebView

<WebView 
    ... some other props ... 
    injectedJavaScript={'function hideHead(){document.getElementById("head").style.display="none";};hideHead();'} 
    /> 

有时候,你仍然可以看到头闪烁,所以我想在web视图页面加载后,这个JavaScript被评估。

是否有可能以某种方式在页面呈现之前添加/注入JavaScript或CSS以移除闪烁?

+0

也许你可以在隐藏的反应原生视图中呈现webview,然后显示webview –

+0

我希望用户能够关注WebView内部的链接。如果它总是变成一个新的WebView,它会不会很好呢?现在它注入了加载到WebView中的每个页面中的JS,但有时仍然会看到闪烁的标题。 – Narigo

+0

如果您颠倒逻辑,首先隐藏标题,然后在不在WebView中时显示它,您会获得更好的结果吗? –

回答

3

我找不到在页面加载之前注入JavaScript或CSS的方法。

要解决闪烁的问题,我把另一个View放在WebView之上,而它仍处于loading状态。可以使用onNavigationStateChanged回调来确定页面是否已加载。我放在上面的View只显示ActivityIndicatorIOS

+0

你能提供一个关于如何实现它的示例代码吗?谢谢 –

相关问题