为了以下解决方案,我对 DOM 做了一些小的修改:
<div class='overdiv'>
<a href='#'><div class='button button1'>button 1<span class="data">b1</span></div></a>
<a href='#'><div class='button button2'>button 2<span class="data">b2</span></div></a>
<a href='#'><div class='button button3'>button 3<span class="data">b3</span></div></a>
<a href='#'><div class='button button4'>button 4<span class="data">b4</span></div></a>
<div class="whitespace"></div>
</div>
我相信这会如你所愿。如果你有多个.overdiv,如果你做这样的事情或计划在未来做这样的事情,它也可以工作,因为一切都在使用类。
$(".overdiv").find(".button").click( function() {
$this = $(this);
$this.closest(".overdiv").children(".whitespace").text($this.text());
});
$('.button1').click();
Fiddle
如果你想显示不同的文本,你也可以这样做(如果你想显示不同的内容,只需更改 .data 元素中的内容:
$(".overdiv").find(".button").click( function() {
$this = $(this);
$this.closest(".overdiv").children(".whitespace").text($this.find(".data").text());
});
$('.button1').click();
Fiddle