6

Controller init() には、一般的なスタイルのリストがあります。

$this->view->headLink()->setStylesheet('/style/style.css');
$this->view->headLink()->appendStylesheet('/style/style2.css');
$this->view->headLink()->appendStylesheet('/style/style3.css');
$this->view->headLink()->appendStylesheet('/style/forms.css');
$this->view->headLink()->appendStylesheet('/style/ie_patches.css','all','lte IE 7');

私が必要としているのは、後でこのコントローラーのアクションの 1 つでスタイルシートの 1 つをスタックから削除する方法です。

あなたの助けに感謝します、私の英語を許してください

4

3 に答える 3

7

または、使用できます

$this->view->headLink()->offsetUnset($offsetToBeRemoved); // offsetToBeRemoved should be integer

offsetToBeRemoved を見つけるには、反復子 ( $this->view->headLink()->getIterator()) またはコンテナー$this->view->headLink()->getContainer()) を取得し、それをループして、関心のあるキーを取得します。

于 2011-06-21T10:53:18.780 に答える
4

たとえば、「/style/style2.css」を削除する場合は、次のようにアクションで実行できます。

    $headLinkContainer = $this->view->headLink()->getContainer();
    unset($headLinkContainer[1]);

これが機能するのは、コンテナー (つまり のインスタンス) がArrayObjectZend_View_Helper_Placeholder_Containerを拡張するためです。これは、配列を使用しているかのように headLink 要素を操作できることを意味します。

お役に立てれば。

于 2011-06-21T10:51:22.367 に答える
3

次のように空のコンテナを設定することもできます。

$this->view->headLink()->setContainer(
    new Zend_View_Helper_Placeholder_Container()
);
于 2012-02-20T01:43:43.900 に答える