JavaScript変数でさまざまな画像ファイル形式を取得する

私は自分のポートフォリオWebサイトを開発しています。これはJavaScriptギャラリーに基づいています。スクリプトは、現在の位置を追跡することによって画像を表示してプリロードし、1つのファイルタイプだけを読み込む場合には鮮やかに機能します。ここに抽出物が来る:

var $current = 1;
var $sourceImage = 'path-to-images/'+$current+'.jpg';
var $newImage = new Image();
$newImage.src = $sourceImage;

しかし、ディレクトリ内に複数のファイルタイプがあるとしたら、例えば:1.jpg 2.jpg 3.gif 4.png ...?サーバー上に存在するファイルの拡張子を見つけて変数に渡す最も良い方法は何ですか?

アドバイスありがとう。

0
どのJavascriptギャラリーを使用していますか?
追加された 著者 Aneon,
それは自分の複雑なスクリプトで、私の特定のニーズに合わせて書かれています。私の質問では、私の問題に関連する部分だけを含んでいます、私は$ sourceImage変数に適切な拡張子を入れる方法を知る必要があります:)
追加された 著者 Bartko Dębkowski,

2 答え

JavaScriptを使用してファイルが存在するかどうかを確認するには、ajaxリクエストを送信する必要があります。

var req = this.window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();
    if (!req) {
        throw new Error('XMLHttpRequest not supported');
    }

   //HEAD Results are usually shorter (faster) than GET
    req.open('HEAD', url, false);
    req.send(null);
    if (req.status == 200) {
        console.log('file exists');
    }
    else {
        console.log('file does not exist');
    }

phpjs から。

0
追加された
うん、だから、あなたはAldehirのものを使用するようにあなたのソリューションを変更すべきだ^^
追加された 著者 MatTheCat,
だからあなたのソリューションを使用するには、私はvar reqのすべての可能性を渡す必要がありますか?最初に* .jpgの空き状況をチェックし、見つからなければ* .gifなどをチェックしますか?
追加された 著者 Bartko Dębkowski,
素晴らしい作品!両者に感謝します。近い将来、Aldehirのソリューションを使用するためにスクリプト全体を書き直します。
追加された 著者 Bartko Dębkowski,

Javascriptだけを使用すると、ソリューションが制限されます。最も簡単な方法は、すべてのファイル名を含む配列を持つことです。

var imageFiles = ["1.jpg", "2.jpg", "3.gif", "4.png"];

しかし、多数の画像がある場合、これは望ましくないことがあります。

あるいは、ディレクトリ内のすべてのイメージをJSON配列として返すPHP(または任意の言語)でページを書くことができます。

["1.jpg", "2.jpg", "3.gif", "4.png"]

次に、 jQuery のようなフレームワークを使用してページをリクエストしてください。この場合、 getJSON()がうまく動作します。あなたは常にホイールを再発明することができますが、AJAXのフレームワークを強く提案します。

0
追加された
JavaScript - 日本のコミュニティ
JavaScript - 日本のコミュニティ
2 参加者の

日本人コミュニティのjavascript