1

私は JavaScript と一般的な Web サイトに慣れていないので、この質問が少し基本的に聞こえたらすみません。

ただし、アイデアは、すべてのページに何らかの情報を示すポップアップメッセージを表示することです. Web サイトは静的であるため、後でメッセージを変更したい場合は、すべてのページを編集する必要があります。

これを簡単にするために、単純なテキスト ドキュメントをサーバーに含めようとしました。

ページはテキスト ドキュメントを読み取り、メッセージを表示します。

したがって、テキスト ドキュメントを編集するだけで、ページに表示されるメッセージが変更されます。

私のコードはそうです:

   <div class="sticky-box" id="x">
        <div class="sticky-inner">
        <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/mootools/1.2.4/mootools-yui-compressed.js"></script>
        <script type="text/javascript"></script>
        <script>
            window.addEvent("domready",function(){
                var csvRequest = new Request({
                url:"text.txt",
                onSuccess:function(response){                           
                        document.write(response);                       
                    }
                }).send(); 
            });
            </script>
    </div>

一方、ドキュメントは正常に読み取られます。Web ページではなくテキストが表示されます。要するに、ページに「テキストの例」が表示されますが、他には何もありません。

誰にでも理由はありますか?

これを行う簡単な方法はありますか?

注: Web サイトをやり直すことはできません

4

2 に答える 2

1

代わりにdocument.write(response)、ページに div または span 要素などのコンテナーを作成し、そのコンテナーにデータを書き込む必要があります。ページの読み込みが完了した後に使用するdocumen.write()と、ブラウザーは新しいドキュメントを開き、現在のドキュメントのコンテンツを置き換えます。

以下のコードのようなものが役立ちます:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/mootools/1.2.4/mootools-yui-compressed.js"></script>
<script type="text/javascript"></script>
<script>
    window.addEvent("domready",function(){
    var csvRequest = new Request({
    url:"text.txt",
    onSuccess:function(response){                           
    document.getElementById("sticky_inner").innerHTML= response;                       
    }
    }).send(); 
    });
</script>
<div class="sticky-box" id="x">
    <div class="sticky-inner" id="sticky_inner"></div>
</div>
于 2013-05-22T10:12:41.263 に答える
1

を使用しているからですdocument.write(response)document.write空白のドキュメントを作成し、その上にコンテンツを書き込むだけです。代わりに、たとえばdiv要素を使用して、その中にデータを書き込む必要があります。

document.write の詳細

于 2013-05-22T10:14:00.950 に答える