根据窗口大小有条件地加载一些html
我想加载地图,但我只想加载它,如果我可以假设他们在wifi上。 由于没有真正的方法可以做到这一点,我将假设如果窗口宽度大于600,它们就是。 加载iframe有点棘手 – 但只需加载图片就可以让我开始。 这是有效的,但如果我在那里推出一堆复杂的HTML,它似乎不起作用。 我不太确定我的html中间应该有脚本。
if (document.documentElement.clientWidth > 600) { document.write("Hello
"); }
我认为这篇文章会对我有所帮助,但这有点过头了。
有没有人给我一些提示或一些阅读?
谢谢。
编辑:看看这个小提琴
也许我应该有一个永恒的.html文件并把它拉进……?
逃逸和东西存在问题 – 当嵌入代码中有大量疯狂的字符时……
你永远不应该使用document.write()
这不是一个好的做法来使用它。 相反,你可以使用javascript的.innerHTML
或jQuery的.html()
。 jQuery还有其他一些方法来完成这类工作,例如.append()
.appendTo()
类似.appendTo()
.prependTo()
:
jQuery的:
$(function () { var width = $(window).width(); if (width <= 600) { $('lesser than 600
').appendTo('body'); } else { $('greater than 600
').appendTo('body'); } });
DEMO FIDDLE
CSS MEDIA QUERIES:
你也可以用css媒体查询实现这种事情:
span { color:green; font-weight:bold; } .div600 { display:none } .divOther { display:block } @media all and (max-width:600px) { /****<-----This media query******/ .div600 { display:block } .divOther { display:none } }
DEMO FIDDLE CSS MEDIA QUERY
你想要这样的东西……
var width = $(window).width(); //retrieve current window width if(width > 600){ $("#articleID").html(Your_Html_Section_Which_you_want_to_put_in_article); //document.write("Hello
"); }