我的屏幕上有 3 个相同的小部件,这些小部件与 3 个 div 标签中的小部件具有用户选择在他/她的屏幕上拥有的内容,她/他可以在屏幕上移动和排列。有点像 iGoogle 所做的。所以基本上,他们可以在屏幕上拥有 0 个或多个相同的小部件。
我通过在 html 中使用类而不是 id 来实现这一点。
<div class="widget_1">
<div class="widget_header_1"></div>
<div class="widget_sub_header_1"></div>
<div class="widget_content_1"></div>
<div class="widget_footer_1"></div>
<div>
因此,如果我有 2 个这些小部件,则用户屏幕将有 2 个带有 class 的小部件widget_1
,即上面的 html 将在 html 源代码中出现两次。
无论如何,我在小部件的 sub_header 中有一个按钮,它将数据添加到小部件的content
部分,即
$('.my_button').live('click',function() {
get_data( $(this) );
});
这很好,例如,如果我点击第一个按钮widget_1
,只有它的内容会改变,如果我点击第二个按钮widget_1
,只有它的内容会改变,它不会影响其他widget_1
的。
为此,我正在使用:
$(this).closest('.widget_1').find('.widget_content_1').empty().append( some_data_here );
我的问题是,我想在小部件中单击按钮时将加载图像添加到内容中sub_header
,所以我尝试了:
$(this).closest('.widget_1').find('.widget_content_1').prepend( "<img class='imgLoading' src='/img/loading_white_32.gif'></img>" );
这是因为它只在单击按钮的小部件中显示加载图像,但如果我在屏幕上widget_1
有 2 个,它会在单击时显示 2 个图像,如果我有,它将在单击时显示 5 个图像5在屏幕上。 widget_1
widget_1
widget_1
为什么会这样?
无论屏幕上有widget_1
多少个,它都应该在单击时仅显示 1 个加载图像。widget_1