2012-06-01 4 views
0

Я хочу, чтобы эффект исчезнуть из div, следующий скрипт не работает. В чем проблема? Большое спасибо.fadein effect with scriptaculous

function fadeIn(){ 

    $('test').invoke("fade", { 
     from: 0, 
     to: 1, 
     afterFinish: function() { 

      $('test').setStyle({ 
       display: 'block'    
      });   
     } 
    }); 
} 

<div class='top'> 
    <div id="test" style="display:none"> 
     Fade in test 
    </div> 
</div> 

<a href="#" onClick="fadeIn(); ">Click me</a> 

ответ

1

Проблема заключается в том, что invoke представляет собой метод Enumerable и $ возвращает Element, не Enumerable.

Поскольку $ фактически псевдоним для getElementById, нет необходимости для того, чтобы вернуть массив элементов (вы можете иметь только один элемент с любой заданной id, так что только один элемент никогда не будет возвращен).

Вы можете просто позвонить fade непосредственно на элементе:

$('test').fade({ 
    from: 0, 
    to: 1, 
    afterFinish: function() { 
     $('test').setStyle({ 
      display: 'block'    
     });   
    } 
}); 

 Смежные вопросы

  • Нет связанных вопросов^_^