我有一个div与文本'一个'在里面。当您将鼠标悬停在它上面时,我想将文本更改为“' two'”,当您停止将鼠标悬停在其上时,我想将文本更改回“' one”。我尝试使用jQuery做到这一点,但是在它变成'两个'之后,它并没有改回到'一个'一旦你停止盘旋它。我做错了什么?
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("p").hover(function(){
$(this).replaceWith("two");
}, function(){
$(this).replaceWith("one");
});
});
</script>
<p>one</p>
答案 0 :(得分:3)
使用respond_to do |format|
format.js #{ render 'index.js.erb' }
format.html
end
,因为js.erb
将替换整个元素,并且您将其替换为文本而不是元素,因此下次会丢失元素的选择。
text()
replaceWith()
答案 1 :(得分:0)
$(document).ready(function(){
$("p").hover(function(){
$(this).html("two");
}, function(){
$(this).html("one");
});
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<p>one</p>
&#13;