首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

JS如何获取图片在td中的位置呢

2013-01-11 
JS怎么获取图片在td中的位置呢?table idtable styletext-align:centertrtdxxxxxxx/tdtd

JS怎么获取图片在td中的位置呢?


<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>

热点排行