0

ドロップダウン メニューの問題。問題は、メニュー コード自体、つまり ul..etc ではなく、現在埋め込まれている php チャット プログラムです。このコードを挿入して、エラーなしで表示されるチャット ボックスを埋め込むと、UL ドロップダウン リンクを使用する機能が無効になります。埋め込まれた php は、#zonebar div にあるメニューとは完全に別の div にあります。

<?php $chat->printChat(); ?>特定の div にある埋め込みコード。

問題は、このコードを削除すると、ドロップダウン メニュー ボタンが再び機能することです。

より具体的に言うと、html ドキュメントで php を使用できる適切な htaccess を持つ html ファイル内の唯一の php コードは..

以下のコードは、すべてのタグの上にある私のページの一番上にあります

<?php

require_once dirname(__FILE__)."/src/phpfreechat.class.php";
$params = array();
$params["serverid"]       = md5(__FILE__); // calculate a unique id for this chat
$params["title"]          = "A simple chat with user's parameters";

$params["frozen_nick"]    = true;     // do not allow to change the nickname
$params["shownotice"]     = 0;        // 0 = nothing, 1 = just nickname changes, 2 = connect/quit, 3 = nick + connect/quit
$params["max_nick_len"]   = 20;       // nickname length could not be longer than 10 caracteres
$params["max_text_len"]   = 300;      // a message cannot be longer than 50 caracteres
$params["max_channels"]   = 1;        // limit the number of joined channels tab to 3
$params["refresh_delay"]  = 2000;    // chat refresh speed is 10 secondes (10000ms)
$params["max_msg"]        = 15;       // max message in the history is 15 (message seen when reloading the chat)
$params["height"]         = "230px";  // height of chat area is 230px

$params['admins'] = array('daddo'  => '1234', 'berthill' => '1234');
$params["debug"]          = false;     // activate debug console

$chat = new phpFreeChat( $params );

?>

そして、特定のdivのコード

<?php $chat->printChat(); ?>

修正後にアドレスを編集したphpコンテンツなしで、htmlファイルに直接リンクします

埋め込まれたphpコードとのリンク

4

1 に答える 1

0

約 10 個の JavaScript ファイルを調べることは、私が実際にやりたいことではないので、これについて推測するつもりです。

あなたのドロップダウン メニューは jQuery を使用しています...これは素晴らしいことです。

あなたのチャットはPrototypeを使用しています...これも素晴らしいです。

彼らはおそらく一緒にうまく遊んでいません。これを試すことができます:

var $j=jQuery.noConflict();
$j(document).ready(function(){
    $j("#zone-bar li em").click(function() {
        var hidden = $j(this).parents("li").children("ul").is(":hidden");
        $j("#zone-bar>ul>li>ul").hide()
        $j("#zone-bar>ul>li>a").removeClass();
        if (hidden) {
            $j(this)
            .parents("li").children("ul").toggle()
            .parents("li").children("a").addClass("zoneCur");
        }
    });
});

機能する場合と機能しない場合がありますが、$j代わりに使用$すると問題が解決する場合があります。

于 2012-09-05T18:21:17.017 に答える