2012-09-07 58 views
0

我有以下結構:jQuery的插入無父元素調整

<td> 
    <input name="foo" size="45"/> 
</td> 

,我要動態地插入圖片後,然後將其定位裏面輸入,就像這樣:

$j('<img class="icon-ketchup" style="display: none; position: relative; right: 35px; top: 7px;" src="http://localhost:82/pod/plugin_assets/webshop/images/icons/cross.png" />').show().insertAfter($j('input')); 

tdinput大小相同,我不想調整td元素的大小。這是如何實現的?

+0

你爲什麼不用'overflow:hidden;'爲'td'?你想顯示全尺寸的圖像? – anhtran

+0

您可以將圖像的寬度屬性設置爲td的大小。如果不設置高度屬性,它將按比例重新調整比例。 –

+1

出於好奇,你爲什麼要在輸入字段上顯示圖像? –

回答

1

您需要將其放在絕對位置。 Javascript是不需要的,但仍然可以使用它你想要的。見http://jsfiddle.net/C7trn/

HTML

<td style="position: relative; border: 2px solid black; padding: 5px;"> 
<input name="foo" size="45"/> 
<img class="icon-ketchup" style="position: absolute; right: 5px; top: 7px;" src="http://localhost:82/pod/plugin_assets/webshop/images/icons/cross.png" /> 
</td>​ 

的關鍵是使TD position: relative;並具有圖像position: absolute。這將使圖像相對於td絕對定位。

+0

我不能使用背景,因爲我需要在我的圖像上的一個mouseover事件。 – blid

+0

我會用解決方案更新,然後 –

+0

用解決方案更新。我向TD添加了邊框和填充以便更容易看到,您可以擺脫它。 –