0

私は JavaScript が初めてで、CakePHP では特に混乱しています。

別のページを取得して div に配置する AJAX 呼び出しがあります。これは機能しますが、表示されるだけでなくフェードインしたいと思います。

これは私がこれまでに持っているコードです:

$this->Js->get('#load_items');
$this->Js->event('click', $this->Js->request(
    array('action' => 'plain_items'),
    array(
        'async' => true, 
        'update' => '#items',
        'complete' => 'onComplete'
    )
));
$this->Js->event('onComplete', $this->Js->effect('fadeIn'));

echo '<div id="items"></div>';
echo $this->Form->submit('Load Items', array('id' => 'load_items'));

これは、「plain_items」ビューを取得して「items」divにロードするのに問題はありませんが、ロード時にフェードさせることはできません。私は何を間違っていますか?

4

1 に答える 1

0

$this->Js これには #load_items のオブジェクトが含まれています。div #items をフェードインしたい場合は、この div のオブジェクトを取得してからフェードインする必要があります。以下の例を参照してください

$this->Js->event('click', $this->Js->request(
    array('action' => 'plain_items'),
    array(
        'async' => true, 
        'update' => '#items',
        'before' => $this->Js->get('#items')->effect('fadeOut', array('buffer' => false)),
        'complete' => $this->Js->get('#items')->effect('fadeIn', array('buffer' => false))
    )
));
于 2012-10-05T17:06:45.910 に答える