JS如何获取图片在td中的位置呢
JS怎么获取图片在td中的位置呢?
有以上表,在表外还有其他的东西套着,我就不一一写了。
表的行数不定,列数也不定,但是每行的第二列一定会有img_x这么一个图片,点击图片触发click事件,将div_x显示出来。但是要控制好div显示的位置,这里要设置它的left。
请问怎么根据图片获取它在td中距离左侧的px数值呢?
------解决方案--------------------
这里改下
<img src="xxx" id="img_1" onclick="clickAction(this)"/>
------解决方案--------------------
希望对你有用。
------解决方案--------------------
document.getElementById('imgId').offsetLeft;
------解决方案--------------------
<table id="table" style="text-align:center;">
<tr>
<td>xxxxxxx</td>
<td> xx xx xx<img src="xxx" id="img_1" onclick="clickAction()"/><div id="div_1" style="display:none;">xxxx<div></td>
<td>xxxxxxx</td>
<td>xxxxxxx</td>
</tr>
<tr>
<td>xxxxxxx</td>
<td> xx xx xx<img src="xxx" id="img_2" onclick="clickAction()"/><div id="div_2" style="display:none;">xxxx<div></td>
<td>xxxxxxx</td>
<td>xxxxxxx</td>
</tr>
</table>
有以上表,在表外还有其他的东西套着,我就不一一写了。
表的行数不定,列数也不定,但是每行的第二列一定会有img_x这么一个图片,点击图片触发click事件,将div_x显示出来。但是要控制好div显示的位置,这里要设置它的left。
请问怎么根据图片获取它在td中距离左侧的px数值呢?
------解决方案--------------------
function clickAction(obj){
if(obj.nextSibling.nodeType==1){
obj.nextSibling.style.display = 'block';
return;
}
clickAction(obj.nextSibling);
}
这里改下
<img src="xxx" id="img_1" onclick="clickAction(this)"/>
------解决方案--------------------
希望对你有用。
function clickAction(node){
var nodeLeftWidth = node && node.offsetLeft;
alert(nodeLeftWidth);
}
------解决方案--------------------
document.getElementById('imgId').offsetLeft;
------解决方案--------------------
<table id="table" style="text-align:center;">
<tr>
<td>xxxxxxx</td>
<td> xx xx xx<img src="xxx" id="img_1" onclick="clickAction(this)"/><div id="div_1" style="display:none;">xxxx<div></td>
<td>xxxxxxx</td>
<td>xxxxxxx</td>
</tr>
<tr>
<td>xxxxxxx</td>
<td> xx xx xxxxxxxxxxxxxxxxxx<img src="xxx" id="img_2" onclick="clickAction(this)"/><div id="div_2" style="display:none;">xxxx<div></td>
<td>xxxxxxx</td>
<td>xxxxxxx</td>
</tr>
</table>
<script type="text/javascript">
function clickAction(o) {
alert(o.offsetLeft)
}
</script>