所以我有一個5x5像素平方的絕對定位div。有沒有div出現在TD的TD onclick跟jquery/javascript?
如果我有一個表,說
<table><tr><td>Something</td></tr></table>
我想股利準確顯示到TD的權當我點擊TD內的任何地方,所以它應該出現搶購到右側無論我在TD上點擊的位置如何。有沒有簡單的方法來完成這個在jquery/Javascript?
所以我有一個5x5像素平方的絕對定位div。有沒有div出現在TD的TD onclick跟jquery/javascript?
如果我有一個表,說
<table><tr><td>Something</td></tr></table>
我想股利準確顯示到TD的權當我點擊TD內的任何地方,所以它應該出現搶購到右側無論我在TD上點擊的位置如何。有沒有簡單的方法來完成這個在jquery/Javascript?
給出TD的相對位置。並把它放在裏面。給你的div
right:0px;
上點擊
給你的div風格:
left:50%;
margin-left:-2px //(these might need to be change a bit)
選擇您想要把一個<td>
使用jQuery選擇後<td>
(或者使用類或ID),並使用$ .append()
以下是您選擇jQuery標記的選項
http://api.jquery.com/category/selectors/
因此,像
$("td").click(function(event) {
$(this).append("<td></td>");
});
我建議使用隱藏table
細胞,並呈現內的div
:
<table>
<tr>
<td>Something</td>
<td class="hidden"><div></div></td>
</tr>
<tr>
<td>Something</td>
<td class="hidden"><div></div></td>
</tr>
</table>
的jQuery:
$('tr td').click(
function(){
$(this).closest('tr').find('.hidden').toggle();
});
CSS:
td {
vertical-align: middle;
width: 5em;
height: 2em;
}
.hidden {
display: none;
}
.hidden div {
display: block;
height: 5px;
width: 5px;
background-color: #f90;
}
.hidden
)
td
總是可見的(減少跳來跳去頁的機會,由於突然出現的表格單元格):
jQuery的:
$('tr td').click(
function() {
$(this).closest('tr').find('.hidden div').toggle();
});
CSS:
table {
empty-cells: show;
}
td {
vertical-align: middle;
width: 5em;
height: 2em;
}
td:hover {
background-color: rgba(255,255,0,0.2);
}
.hidden div {
display: none;
}
.hidden div {
height: 5px;
width: 5px;
background-color: #f90;
}
也許堅持tr元素在你的懸停。
$('tr').click(
function() {
$(this).find('.hidden div').toggle();
});
如果他可以更改標記,那麼這是一個很好的簡單解決方案。 – 2011-04-29 18:55:28
@Nicky,謝謝;如果他不能改變加價,那麼它可能會更棘手。 :) – 2011-04-29 19:02:29
也許堅持你的盤旋在tr元素 – 2011-04-29 20:54:57
是的,你可以用幾種方法處理它。這裏有一個想法:
$("td").click(function(e) {
el = $(e.target);
el.after("<div class='my_square' />");
sq = $(el + " + .my_square");
sq.css({
position: "absolute",
left: el.offset().left,
top: el.offset().top + el.outerHeight()/2
})
})
這是另一種使用職位的解決方案。雖然我不確定你是否想要多個盒子或只有一個盒子。
http://jsfiddle.net/nickywaites/DvTBR/
$(function() {
$('#summary td').click(function() {
var td = $(this);
var position = td.position();
$('#link').css({
top: position.top + (td.height()/2),
left: position.left + td.width() + 10
}).show();
});
});
<div id="link"></div>
<table id="summary">
<tr><td>Toast</td></tr>
<tr><td>Toast</td></tr>
</table>
#link {
width:5px;
height:5px;
background-color:royalblue;
display:none;
position:absolute;
}
,是的,它的風格像其他人說。 – Jay 2011-04-29 18:41:45