错误:ReferenceError:未定义事件

时间:2014-09-24 23:03:09

标签: javascript jquery

请帮助解决以下问题。

我得到"事件未定义" firefox和ie上的错误。

问题似乎与event.preventDefault();

有关

此css只关闭下拉菜单

    <style type="text/css">
    .dropdown {
        display: none;
        opacity: 0;
    }
    </style>

的jquery                  

自定义javascript

    <script type="text/javascript">

              $( document ).ready(function(){

                  jQuery('.download-dropdown > a').click( function() {
                      event.preventDefault();
                      var $this=jQuery(this);
                      if (!$this.parent().hasClass('active')) {
                          var top=$this.parent().offset().top;
                          var left=$this.parent().offset().left;
                          jQuery('body').append($this.parent());
                          $this.parent().addClass('active');
                          $this.parent().css({ 'position': 'absolute',
                                                'top': top,
                                                'left': left,
                                                'z-index': 999});
                          $this.parent().children('.dropdown').animate({ 'opacity': '1','height': 'toggle'});
                          $this.parent().animate({'height': '400'});
                          window.dropdown=$this;
                      }
                      else {
                          $this.parent().css({ 'position': 'relative',
                                              'top': 'inherit',
                                                'left': 'inherit',
                                                'z-index': 1});
                          $this.parent().removeClass('active');
                          jQuery('article.contact-download > div > section > div').append($this.parent());
                          $this.parent().children('.dropdown').animate({ 'opacity': '0','height': 'toggle'});
                          $this.parent().animate({'height': '45'});
                      }

                  });



              });

          </script>

这是html

    <article class="contact-download" data-background-height="60">
      <section data-speed="0">
        <div>
          <div class="download-dropdown" style="height: 60px; position: relative; z-index: 1; top: inherit; left: inherit; display: inline-table"> <a style="padding-left: 25px; text-decoration:none; " href="#">click to see more</a>
            <div class="dropdown">
              <ul>
                <li><a href="#">Link 1</a></li>
                <li><a href="#">Link 2</a></li>
                <li><a href="#">Link 3</a></li>
                <li><a href="#">Link 4</a></li>
              </ul>
            </div>
          </div>
        </div>
      </section>
    </article>

1 个答案:

答案 0 :(得分:1)

您需要将is设置为函数参数:

jQuery('.download-dropdown > a').click( function(event) {
    // event is defined now                      __^__