见代码(html)
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd" > <html> <head> <!--<meta name= "viewport" content= "width=device-width,minimum-scale=1.0,maximum-scale=2.0,user-scalable=1" />--> <meta http-equiv= "Content-Type" content= "text/html; charset=UTF-8" /> </head> <body onload= "bodyfinish()" > <div id= "unit" style= "width: 320px; height:48px; position:relative;" > <p>mogoads</p> </div> </body> <script type= "text/javascript" > function bodyfinish(){ var include = false; var metas = document.getElementsByTagName( 'meta'); var i; console.log( "for begin" ); for (i=0; i<metas.length; i++) { if (metas[i].name == "viewport" ) { include = true; metas[i].content = "width=device-width, minimum-scale=1.0, maximum-scale=2.0, user-scalable=1" ; console.log( "in for set meta" ); break; } } if(!include){ console.log( "set meta" ); var head = document.getElementsByTagName( 'head')[0]; console.log( "set meta after %s" ,head); var newElement = document.createElement( 'meta'); newElement.setAttribute( 'name', 'viewport'); newElement.setAttribute( 'content', 'width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=2.0,user-scalable=1'); head.appendChild(newElement); var s = document.getElementsByTagName( 'meta'); for(i=0;i<s.length; i++){ console.log( "%d" ,i); if (s[i].name == "viewport" ) { var content_s = s[i].content; console.log( "viewport have add" ); } } } } </script> </html> |
重点是这个javascript
var newElement = document.createElement( 'meta' ); newElement.setAttribute( 'name' , 'viewport' ); newElement.setAttribute( 'content' , 'width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=2.0,user-scalable=1' ); head.appendChild(newElement); |
关于meta 中参数的使用请参看
http://blog.caesarchi.com/2012/05/html-viewport-meta.html
http://www.w3.org/TR/css-device-adapt/#the-lsquomax-zoomrsquo-property
标签:
meta.javascript
, html5
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)