JavaScript不起作用

JavaScript不起作用

我将通用的(对我所有的内容页面而言)js放在我的主页的开头部分。

<head runat="server">
<script type="text/javascript" src="../Scripts/jquery-1.4.1.js"></script>
<script type="text/javascript" src="../Scripts/jquery.corner.js?v2.11"></script>
<script type="text/javascript" src="../Scripts/jquery.timers.js"></script>
<script type="text/javascript" language="javascript">
        var mouseOver = false;
        $('.right_menu_links').hover(
          function () {
              var visible = $(this).parent().children(".right_menu_hint").css("display");
              mouseOver = true;
              if (visible == 'none') {
                  $(this).oneTime("1s", function () {
                      if (mouseOver)
                        $(this).parent().children(".right_menu_hint").show("slow");
                  });
              }
          },
          function () {
              mouseOver = false;
              $(this).parent().children(".right_menu_hint").hide("slow");
          }
        );
</scipt>


如我所料,我所有的内容页面脚本都应将悬停事件附加到所有right_menu_links上。但这是行不通的。

当我在内容页面上放置相同的脚本时,一切正常!
怎么了?

最佳答案

它需要包装在DOM has loaded时调用的函数中。

<script type="text/javascript" language="javascript">
    var mouseOver = false;
    $(function(){
        $('.right_menu_links').hover(
          function () {
              var visible = $(this).parent().children(".right_menu_hint").css("display");
              mouseOver = true;
              if (visible == 'none') {
                  $(this).oneTime("1s", function () {
                      if (mouseOver)
                        $(this).parent().children(".right_menu_hint").show("slow");
                  });
              }
          },
          function () {
              mouseOver = false;
              $(this).parent().children(".right_menu_hint").hide("slow");
          }
      );
    }
</scipt>

关于c# - MasterPage的ASP.NET JavaScript不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3827942/

10-09 17:27