2016-10-13 4 views
2

私はチャットウィンドウを実装しようとしており、this working PLUNKERが見つかりました。私の実装は非常に初期段階ですが、新しいチャットウィンドウディレクティブを追加すると、CSSの動作の問題に直面しています。 My implemented plunkerここに。append()を使って動的に指令を挿入すると、CSSの動作が変化する

問題:

マイしかし、すぐに第二/第三の窓が開いているとして、単一チャットウィンドウのため正常に動作しますplnkr実施し、スライドさアップにスライドダウンからチャットウィンドウの変更の最小化。私が何か実行して、私のディレクティブ内部

<div id="chat-space"></div>

を追加していますので、

そのは確かに:私はCSSで少し微調整と考える

angular.element(document.getElementById('chat-space')).append(
    // trying to dynamically add the chat windows over here. 
    $compile("<div chat-toggle user-name="+scope.userName+" count='count'></div>")(scope) 
) 

を、それを解消することができます。ありがとう!

+0

これ以上のチャットウィンドウを追加すると、同じIDで複数の要素が生成されてしまうので、「chat_window_1」という問題が発生します。これは無効なHTMLです。それが最小限の問題だとは思わないでくださいが、それは 'X'ボタンをクリックすると問題の原因になります。 – ste2425

+0

@ ste2425:はい、私もそれを理解しましたが、現在は期待どおりに働いていますので、私はそれを見ていませんでした。私はそれらを独立性を保つために 'link'フェーズで扱うことができます –

+0

あるいは、そのロジックをディレクティブの中に入れて、角度のある取引をすることができます。チャットウィンドウの管理がより一般的なセレクタを使用する角度の外になければならない場合。特定のウィンドウは、イベントオブジェクトを使用して見つけることができます。 – ste2425

答えて

0

これは、HTMLとCSSの問題で、私は、

をごplunkrを更新し、それが今のように正常に動作しているが編集した私はchat-toggleのターゲット要素に(下)二つの新しいクラスを追加して、問題がすべてのことでしたchat-toggleのインスタンスがその親要素と同じ幅であり、したがって不規則性を引き起こしていることを確認してください。

.w50{ 
    width:50%; 
} 

.inline{ 
    display:inline-block; 
} 
+0

チャットウィンドウはページの下部にはありません。 emの3を開いてみてください。彼らはまた、互いに等距離ではありません。いくつかのウィンドウを閉じてもう一度開くと、チャットウィンドウをクリックするとすべてが最小化されることがわかります –

+0

いいえ、正しくありません。 3つのチャットウィンドウを開き、それらをトグルしようとしてください。また、それらはすべてページの一番下にあるべきです。今、彼らはページの真ん中に表示されています –

+0

私はあなたが先に進み、見てほしかった、私はあなたを助けようとしていただけです:) – Siddharth

関連する問題