0

私は今、他の人の投稿を読んでこれを行う方法を理解しようと何時間も費やしました.jsfiddleを動作させることさえできましたが、これを自分のページで動作させることはできません.

ページで複数回使用される URL を作成したいので、URL を更新する必要がある場合は、ヘッダーの Javascript 変数を介して 1 か所で行うだけで済みます。

URL を 2 つの部分に分割します。これは、変数の 1 つはほとんどの場合同じですが、もう 1 つの変数はページごとに異なる場合が多いためです。

たとえば、ヘッダーで次のように宣言します。

<script language="javascript" type=”text/javascript”&gt;
function goSchedule()
{
var schedulePath = "http://[rootPath]/";
var scheduleFileName = "[extension to document].htm";
schedulePath = schedulePath + scheduleFileName;
document.getElementById('go').href= schedulePath;
}
</script>

そして、hrefでそれを呼び出す方法がわからないようです。これは機能しません:

<p>Click the following link to test:<a href="javascript:goSchedule();" id="go">Test this link</a></p>

答える場合は、初期の Javascript がどのように作成され、有効な URL になるように適切に呼び出す方法を説明してください

4

1 に答える 1

0

ユーザーがリンクをクリックした瞬間に href 属性を置き換えようとしているようです。ページの読み込みが完了したらすぐに、すべてのリンクに対して href 属性を 1 回置き換えることをお勧めします。

head セクションで関数を宣言していることを確認してください

<head>

<!-- Other head declarations ... -->

<script language="javascript" type=”text/javascript”&gt;
function goSchedule() {
    var schedulePath = "http://[rootPath]/";
    var scheduleFileName = "[extension to document].htm";
    schedulePath = schedulePath + scheduleFileName;
    document.getElementById('go').href = schedulePath;
}
</script>
</head>

そして、このメソッドを body 要素の onload イベントに次のようにバインドします

<body onload="goSchedule()">

    <!-- Other HTML Stuff Goes Here ... -->

    <p>Click the following link to test:<a href="javascript:void" id="go">Test this link</a>
    </p>
</body>

完全な html ページは次のとおりです。

<html>
    <head>

        <!-- Other head declarations ... -->

        <script language="javascript" type="text/javascript">
            function goSchedule() {
                var schedulePath = "http://support.mozilla.org/";
                var scheduleFileName = "en-US/products/firefox?as=u&utm_source=inproduct";
                schedulePath = schedulePath + scheduleFileName;
                document.getElementById('go').href = schedulePath;
            }
        </script>
    </head>
    <body onload="goSchedule()">

        <!-- Other HTML Stuff Goes Here ... -->

        <p>Click the following link to test:<a href="javascript:void" id="go">Test this link</a>
        </p>
    </body>
</html>
于 2013-02-25T20:13:08.093 に答える