2

タイトルが漠然と述べているように、セレクターと要素を使用してアラート メッセージ セットに画像を追加する際に問題がありますか? 命名法にはあまり熱心ではありませんが、これまでのところ私が得たものは次のとおりです。

function sendalert(alert)
{
    var img;
    img = document.createElement('img');
    img.scr = 'ico/sign_warning.gif';
    img.height = 16;
    img.width = 16;

    $('#alert').text(alert).slideDown('500', function() {
    $(this).delay(5000).slideUp('500')});
}

基本的に、ページの上部に .slideDown という div があり、関数 ($alert) に入力されたメッセージを表示します。ただし、ヘッダーにスライド ダウン div を含める必要があり、この関数はさらに下にあるため、.text を使用して div 出力を設定する必要があります。

プレーンテキスト出力は、現時点では (数時間の試行錯誤の後) うまく動作します。ここでやりたいことは、エラー テキストの前に小さなエラー アイコンを追加することです。

.whatever 要素を見つけるのに苦労しましたか? しかし、リストから .add と .load だけが突き出ていることがわかりました。両方を試しましたが、うまくいきませんでした。以下は.addでの私の試みです(基本的に.loadにも同じ概念を使用しました)

function sendalert(alert)
{
    var img;
    img = document.createElement('img');
    img.scr = 'ico/sign_warning.gif';
    img.height = 16;
    img.width = 16;

    $('#alert').add(img).text(alert).slideDown('500', function() {
    $(this).delay(5000).slideUp('500')});
}

問題を伝えるのに十分な情報を提供できたことを願っています。

ありがとう!

編集:ダープに巻き込まれ、修正されました

img.scr = '<img src="ico/sign_warning.gif" width="16" height="16"/>';

あるべき姿に

img.scr = 'ico/sign_warning.gif';

とにかく、それは私の問題を解決しませんでした。

4

1 に答える 1

2

いくつか問題があります。まず第一に、.add()あなたが探している方法ではありません。おそらく探しているのは.append(). さらに、.text()jQuery オブジェクトの を設定すると、他の内部マークアップ (子要素を含む) が上書きされます。したがって、に切り替えても.append()、まだ問題が発生します。

以上のことを踏まえて、これを試してみませんか。

$('#alert').text("").append(img).append(text).slideDown('500', function() {
    $(this).delay(5000).slideUp('500');
});

要点は、alert 要素内のすべてをクリアしてから、画像を追加し、その後にアラートのテキストを追加することです。

おそらくより良い (そしてスタイルを設定しやすい) のは、alert 要素内に固定アイコン要素と固定テキスト領域を配置し、これらを明示的に設定することです。しかし、これで少なくとも正しい軌道に乗るはずです。

于 2012-09-07T01:39:02.963 に答える