簡體   English   中英

使用Javascript在HTML文件中插入視口元

[英]Insert Viewport meta in HTML file using Javascript

在我的示例中,我想將Javascript注入UiWebView RSS_Dettaglio_Webv的內容中。 為什么我不能插入視口元?

NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:storyLink]];
[RSS_Dettaglio_Webv loadRequest:request];
[RSS_Dettaglio_Webv setBackgroundColor:[UIColor whiteColor]];

NSString *javaScript = @"var viewPortTag=document.createElement('meta');\
viewPortTag.id=""viewport"";\
viewPortTag.name = ""viewport"";\
viewPortTag.content = ""width=320"";\
document.getElementsByTagName('head')[0].appendChild(viewPortTag);";

[RSS_Dettaglio_Webv stringByEvaluatingJavaScriptFromString:javaScript];

加載文檔時會解析meta標記,否則它們將被忽略。 請注意,我使用純js來檢測視口大小,並將html頁面調整為該大小。

更新

如果必須使用meta標記,則可以將HTML作為字符串而不是文件加載,在加載字符串之前先對其進行修改……類似(未經測試的代碼)-在其中將“ width:device-width”放入meta標記,然后搜索並替換它:

NSString *filePath = [[NSBundle mainBundle] pathForResource:@"index" ofType:@"htm"];  
if (filePath) {  
    NSString *firstHTML = [NSString stringWithContentsOfFile:filePath];  
    if (firstHTML) {
        NSString *html;
        html = [firstHTML stringByReplacingOccurancesOfString:@"device-width" withString:@"320"];  
        [self.webView loadHTMLString:html baseURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] bundlePath]]];
    }  
}  

JavaScript 設置初始比例<meta name="viewport" < div><div id="text_translate"><p>是否有可能在之前有一個 JavaScript function</p><pre> &lt;meta name="viewport" content="width=device-width; initial-scale=1.0; "&gt;</pre><p> 設置比例數字,以正確定位每個移動設備的寬度? 例如在 JavaScript 我們有<br></p><p>if (window.devicePixelRatio == 0.75)<br></p><p> 我們制作元標記:</p><pre> &lt;meta name="viewport" content="width=device-width; initial-scale=1.4; "&gt;</pre><p> 和<br></p><pre> if (window.devicePixelRatio == 1.5)</pre><p> 我們制作元標記:<br></p><pre> &lt;meta name="viewport" content="width=device-width; initial-scale= 0,75; "&gt;</pre><p> 因此頁面在加載時會放大或縮小,以完全適合設備寬度。</p><p> 如果可能的話,請您發布一個示例。</p></div>

[英]JavaScript to set the initial Scale in <meta name="viewport"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM