无法使用onClick更改数组元素的样式

时间:2013-10-09 10:15:57

标签: javascript jquery html css

我在使用以下代码时遇到问题(它只是不会更改顶级属性:s)

var selectedDivs = new Array();

function addBorder(e) {
      if ($ctrlBeingpressed == true) {
      e.target.style.border="5px solid green"; // to show they are selected
      selectedDivs.push(e.target);
      }
  }

  function test(){
  alert('changing position');
   selectedDivs[0].style.top="10px";
  }


<button type="button" onclick="test()">Right</button>

一些生成的HTML(在其中一个DIV上的Onclick中调用addBorder):

<!DOCTYPE html>
<html lang="en">

    <head> … </head>
    <body style="position: absolute; cursor: auto;" application"="" onkeyup="clearPress()> <div id=" onkeydown="controlCheck(event)">
        <div id="accordion" class="ui-accordion ui-widget ui-helper-reset" style="position:absolute;top:0px;left:0px;width:300px;height:900px" role="tablist"> … </div>
        <div id="buttons" style="position:absolute;top:0px;left:315px;width:1100px;height:50px;border:2px solid grey"> … </div>
        <div id="canvas" class="DROPPABLE ui-droppable" style="position:absolute;top:50px;left:315px;width:1100px;height:850px;border:2px solid grey">
            <div class="DRAGGABLE ui-widget-content ui-draggable" style="border: 1px solid red; width: 120px; height: 60px; top: 156.117px; left: 188.117px; position: relative;" onclick="addBorder(event)">
                <img id="PMF00" src="/devices/AAU01-010.gif" style="border: 5px solid green;"></img>
            </div>
            <div class="DRAGGABLE ui-widget-content ui-draggable" style="border: 1px solid red; width: 120px; height: 60px; top: 10px; left: 10px; position: relative;" onclick="addBorder(event)">
                <img id="PMF01" src="/devices/AAU01-010.gif"></img>
            </div>
        </div>
    </body>

</html>

1 个答案:

答案 0 :(得分:1)

你确定是

$ctrlBeingpressed

已设置并且是真的吗?

否则这个

selectedDivs.push(e.target);

不会执行你的

selectedDivs[0] 

将是未定义的