我想要这样的效果:单击按钮1次和单击第2次,div:eq(0)的内容变为div.replace里面的2个div内容,单击第三次又变回原来div:eq(0)的内容,即“1111”。但我只能想出单击前2次的代码,还原点击写不出来(我不想用再添加div容器来储存原div:eq(0)的内容)。而且chage()函数出错了,不知道为什么。请问高手们该怎么写?<body>
<script type="text/javascript" src="http://localhost/leb/auto/js/jquery-latest.js"></script>
<script type="text/javascript">
var i=0; q=$(".replace>div").length;
function change(){
$("body>div:eq(0)").html()=$(".replace>div:eq("+i+")").html(); // 这一步出错,但为什么出错?
i=(i+1)%q;
}
</script>
<div>1111</div>
<div class="replace">
<div>the content is changed 1</div>
<div>the content is changed 2</div>
</div>
<button onclick="change()">change it</button>
</body>
<script type="text/javascript" src="http://localhost/leb/auto/js/jquery-latest.js"></script>
<script type="text/javascript">
var i=0; q=$(".replace>div").length;
function change(){
$("body>div:eq(0)").html()=$(".replace>div:eq("+i+")").html(); // 这一步出错,但为什么出错?
i=(i+1)%q;
}
</script>
<div>1111</div>
<div class="replace">
<div>the content is changed 1</div>
<div>the content is changed 2</div>
</div>
<button onclick="change()">change it</button>
</body>
var i = 0;
var buf;
function change(){
q=$(".replace>div").length; if(i<q){
if(!buf){
buf = $("body>div:eq(0)").html();
}
$("body>div:eq(0)").html($(".replace>div:eq("+i+")").html()); // 这一步出错,但为什么出错?
i++;
}else{
$("body>div:eq(0)").html(buf);
i = 0;
buf = null;
} }
$("body>div:eq(0)").html()=$(".replace>div:eq("+i+")").html(); // 这一步出错,但为什么出错?
具体看jquery的API html() html(val)
var i = 0;
function change() {
q = $(".replace>div").length;
$("body div:eq(1)").html($(".replace>div:eq("+i+")").html());
i=(i+1)%q;
}最好是给那个要赋值的div加上一个id