作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我目前正在运行以下代码来设置我的 WKWebView 的视口(viewport):
NSString* viewPortjs = [NSString stringWithFormat:@"document.querySelector('meta[name=viewport]').setAttribute('content', 'width=%dpx;', false);", (int) webView.frame.size.width];
[webView evaluateJavaScript:viewPortjs completionHandler:nil];
我可以看到,如果代码找到选择器 viewport
,它会正确设置它,但我想添加将此行添加到 DOM 的功能(如果它不存在)。说到 Javascript,我是个菜鸟,所以我不确定如何更改此代码以处理如果该选择器不存在并添加它的情况。谁能帮我吗?谢谢!
最佳答案
这是将完成您想要的 javascript:
var myCustomViewport = 'width=320px';
var viewportElement = document.querySelector('meta[name=viewport]');
if (viewportElement) {
viewportElement.content = myCustomViewport;
} else {
viewportElement = document.createElement('meta');
viewportElement.name = 'viewport';
viewportElement.content = myCustomViewport;
document.getElementsByTagName('head')[0].appendChild(viewportElement);
}
对于您的用例:
NSString* viewPortjs = [NSString stringWithFormat:@"var myCustomViewport = 'width=%dpx'; var viewportElement = document.querySelector('meta[name=viewport]');if (viewportElement) {viewportElement.content = myCustomViewport;} else {viewportElement = document.createElement('meta'); viewportElement.name = 'viewport'; viewportElement.content = myCustomViewport; document.getElementsByTagName('head')[0].appendChild(viewportElement);}", (int) webView.frame.size.width];
关于javascript - WKWebView - 更改视口(viewport)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24898507/
我正在尝试获得一个按钮,按下该按钮时会改变颜色。当再次按下时,它应该变回原来的颜色。我究竟做错了什么? 我的模板中的按钮: export default { data: {
我是一名优秀的程序员,十分优秀!