此HTML:
<div class="editable" contentEditable="true">
<span class="empty">change me</span>
</div>
和这个JQuery:
$(".empty").click(function() {
$(this).css("color","#000");
$(this).html(" ");
});
没有像我希望的那样工作(或根本没有)。我想这样做当用户点击跨度中的“更改我”文本时,字体颜色变为黑色并且跨度中的现有文本消失。
答案 0 :(得分:1)
这不起作用,因为跨度没有高度属性,在清空它的内容后,它将有width of 0px
和height of 0px
。用<div>
替换范围并在css中给它一个高度。
例如:http://jsfiddle.net/JftGd/12/
答案 1 :(得分:0)
我假设你的代码在你的html <head>
中。
您需要将代码包装在onLoad中,因此代码将在适当的时间执行。
$(function() {
$(".empty").click(function() {
$(this).css("color","#000");
$(this).html(" ");
});
});
答案 2 :(得分:0)
加载页面后执行代码:
$(document).ready(function(ev){
$(".empty").click(function() {
$(this).css("color","#000");
$(this).html(" ");
});
});