Javascript 通过访问DOM添加功能

Javascript 通过访问DOM添加功能,javascript,dom,Javascript,Dom,我正在尝试使用JavaScript向HTML页面添加mouseOver和Click函数。我有一个不可触摸的html和CSS文件,但是JavaScript文件将使用mouseOver在右侧创建下拉菜单,单击功能将添加到“喜欢”和“隐藏”链接,这些链接将更改为“不喜欢”,而“隐藏”按钮将隐藏消息框。而“刷新”会得到一个“onClick”按钮,该按钮用于向页面添加新的消息框,这些消息框存储在一个数组中,该数组由initialize函数、右侧菜单的功能、“Like”和“Hide”链接以及“Refresh

我正在尝试使用
JavaScript
HTML
页面添加
mouseOver
Click
函数。我有一个不可触摸的
html
CSS
文件,但是
JavaScript
文件将使用
mouseOver
在右侧创建下拉菜单,
单击
功能将添加到“喜欢”和“隐藏”链接,这些链接将更改为“不喜欢”,而“隐藏”按钮将隐藏消息框。而“刷新”会得到一个“onClick”按钮,该按钮用于向页面添加新的消息框,这些消息框存储在一个数组中,该数组由initialize函数、右侧菜单的功能、“Like”和“Hide”链接以及“Refresh”按钮组成

我无法将4个
.png
文件附加到JSFIDLE。在“朋友”面板旁边的空间中,它们应该从1到4改变。参见代码

由于某些原因,该下拉菜单没有显示在JSFIDLE上,它可以在FireFox中查看

    function initialise(){
          var msgs = new Array();
        msgS = [
    {title: 'Bob',
     img: 'bob.png',
     username:'Bob',
     userid: '@bob',
     msgtext: "Still waiting for a reply... What's the plan?"
     },
    {title: 'Kurt',
     img: 'kvj.png',
     username:'Kurt',
     userid: '@kvj',
     msgtext: "So it goes..."
     },
    {title: 'Robot',
     img: 'robot.png',
     username:'Robot',
     userid: '@robot',
     msgtext: "Don't worry... found some."
     }];

          preloadHideDropDownMenu();
          menuDropDownMouseOver();
          preloadRotate();
          var picture=0;//to be used with circulate

          setTimeout('circulate(picture)',3000);
          preloadLikeFunction();
          preloadHideFunction();
          preloadRefreshLink();
}

当页面加载并设置鼠标盖、单击函数以及保存在单击刷新按钮时加载的新消息框的数组时,将执行此函数。

始终检查控制台中的Javascript错误。您至少有一个错误与此有关:

function preloadHideDropDownMenu(){
     var first=document.getElementById("navigate");
     var Array menu=new Array(); <-- There is no explicit object typing in JS
     menu=first.childNodes;
      for(var i=0; i<menu.length; i++){
          var nextArray=new Array();
          nextArray=menu[i].childNodes;
           for(var j=0; j<nextArray.length; j++){
               if(nextArray[j].className=="item"){
                  nextArray[j].style.visibility="hidden";
}}}}
不能在Javascript中键入参数,也不能给它们默认值


您应该在JSFIDLE中查看JSHint按钮。当你点击这个按钮时,它会在错误或写JS的最佳实践建议旁边加上一个小红点。

修复这些问题解决了你的问题,还是仍然有问题?
function preloadHideDropDownMenu(){
     var first=document.getElementById("navigate");
     var Array menu=new Array(); <-- There is no explicit object typing in JS
     menu=first.childNodes;
      for(var i=0; i<menu.length; i++){
          var nextArray=new Array();
          nextArray=menu[i].childNodes;
           for(var j=0; j<nextArray.length; j++){
               if(nextArray[j].className=="item"){
                  nextArray[j].style.visibility="hidden";
}}}}
function menuVisible(var dropdown=0){