0

URL を介して変数を渡すことができることに基づいて、非常に原始的なカスタマイズを許可しようとしています。たとえば、次の方法で私のサイトにアクセスした場合:

http://my.stackexchange.com?c=alpha

image-a.png と呼ばれる実行可能なものは何でも、タグまたは背景画像として画像を表示できます。

しかし、それらが異なる値を返す場合:

http://my.stackexchange.com?c=beta

するとイメージが違います。

これはサーバー側の方が簡単ですが、たとえばカスタムヘッダーで呼び出すことができるjavascriptを使用して、それを行う方法があるかどうか疑問に思っていました。それとも他のアイデア?

はい、これはすでに meta.stackexchange.com に配置されていますが、html のみを実行できるという制約 (および制限された JavaScript のようです) でこれを達成する方法について、より広範なプログラミング コミュニティからのアイデアがあるかどうか疑問に思っています。 )。

ありがとう。

4

4 に答える 4

0

get パラメーター (この場合は "c") を JavaScript から表示し、JavaScript を使用して img タグの src を必要なものに変更できます。

于 2010-03-05T22:15:57.383 に答える
0

JQuery をチェックしてください...jquery.com

これは、あなたが必要としているものに近いかもしれない誰かからの例です. http://jquery-howto.blogspot.com/2009/09/get-url-parameters-values-with-jquery.html

これは、parms を取得する方法を示しています...次に、単純な JQuery を使用して差分イメージをロードできます。

于 2010-03-05T22:17:55.343 に答える
0

最初にjqueryでURLパラメータを取得...

エスケープされた URL パラメータを取得する

...または単にjavascript...

JavaScript でクエリ文字列値を取得するにはどうすればよいですか?

これで、jquery を使用してイメージ タグのsrcパラメータを変更できるパラメータが得られました...

jQuery を使用してロールオーバー時に画像ソースを変更する

jquery を使用せずにこれを行うこともできますが、複雑な JavaScript が必要になる可能性があるため、jquery ルートを使用します。

于 2010-03-05T22:18:37.540 に答える
0

パラメータが 1 つしかないと仮定するcと、次の行で取得できます。

var c = /\?c=(.*)/.exec(document.baseURI)[1];

これは完璧なケースで機能するはずです: 適切にフォーマットされた唯一の parameter c. パラメータがない場合、エラーが発生します。

より一般的な方法は次のとおりです。

function getURLParameter(key) {
    var ret = (new RegExp('[?](\?:.*&)*'+key+'=([^&#]*)','')).exec(document.baseURI);
    return ret?ret[1]:null;
}

ドキュメントがロードされたときにそれを呼び出し、それに応じて画像を変更できます。(その部分はかなり簡単なはずですが)

于 2010-03-06T05:00:31.927 に答える