日期:2014-05-17  浏览次数:20732 次

你会用JS动态给html添加空格吗?我教你~

前端项目中有时需要动态用JS添加空格,例如为了照顾CSS的样式或者为了照顾特殊效果的实现。只要用下面这种方法就好了。


HTML:

<div id="test"></div>


如果你不单单想让div之间是null,而是想动态添加空格的话,这样(jquery):


$("#id").innerHTML += "&amp;nbsp;";


就好了


Hope It useful to You and Yous!

1 楼 yuhui0531 2012-06-19  
yuhui0531 写道
sb,这样对吗。jquery对象哪来的innerHTML?

晕。是个女孩子。我的错。。。
innerHTML是dom对象的方法啊。

("#id").html(("#id").html()+"&amp;nbsp;");
2 楼 水果硬糖 2012-06-19  
yuhui0531 写道
sb,这样对吗。jquery对象哪来的innerHTML?

用firebug捕捉以后你就看见了 必须有!
3 楼 yuhui0531 2012-06-19  
或者
document.getElementById("id").innerHTML += "&amp;nbsp;";
4 楼 yuhui0531 2012-06-19  
实践出真知哦。。
5 楼 水果硬糖 2012-06-19  
yuhui0531 写道
或者
document.getElementById("id").innerHTML += "&amp;nbsp;";

你这样写也对 jquery引用的对象也具有这些属性 你用firebug调一下就看见了 虽然是jquery对象 只是对dom的一个封装 只是将 html 变成 [html]这种对象 所以dom的所有属性都有 你要用调试工具自己去一层一层拨开 就看见了
6 楼 水果硬糖 2012-06-19  
yuhui0531 写道
实践出真知哦。。

找到了吗?
7 楼 tlde_ti 2012-06-20  
试了下,空格怎么都没有.
http://jsfiddle.net/FAVr8/53/
改成
$("#test").html($("#test").html()+"&nbsp;")
后成功
8 楼 水果硬糖 2012-06-20  
tlde_ti 写道
试了下,空格怎么都没有.
http://jsfiddle.net/FAVr8/53/
改成
$("#test").html($("#test").html()+"&nbsp;")
后成功


我之前试过html()这个function 但不能动态识别出"&"这个符号 所以用inerhtml去直接修改她的dom
9 楼 PeTiRo 2012-06-20  
$("#test").html($("#test").html()+"&nbsp;")
$("#test")[0].innerHTML += "&nbsp;";
实际出真知