JavaScript初心者です。
画像のサムネイル一覧のページがあり、サムネイルをクリックすると元の画像が別ページで開く
というページを作っています。
今は
<a href="元の画像.jpg" target="_blank"><img src="サムネイル.jpg"></a>
としているのですが、window.openを使ってウィンドウのサイズ指定を行いたいと考えております。
画像ファイル名が"001.jpg","002.jpg","003.jpg"…となっている場合、その画像のサイズを取得してそのサイズにウィンドウを開くスクリプトを教えてください。
宜しくお願いします。
No.4ベストアンサー
- 回答日時:
>ただ、画像が50枚あったら50個書かないといけないんですよね?
この質問でそこまで要求してると思えないのですが、、。
確かに、連続とか書いてるけど、、。
(=w=;
まあ、いいや。修正。
ファイル名が001.jpgからの連番しか無いと考えた場合、
サムネイルと元画像が同一フォルダにあるとは考えられないので、
moto,sam でフォルダ分けました。
後、画像の並べ方書いて無いから、とりあえず、
上から、下に一列表示
<html>
<head>
<script type="text/javascript">
function ImageOpen(strName)
{
var img1 = new Image;
img1.src = strName;
var strPalam;
strPalam = "'width=";
strPalam += img1.width;
strPalam += ",height=";
strPalam += img1.height;
strPalam += ",width=";
strPalam += img1.width;
strPalam += "'";
window.open(strName, '_blank', strPalam);
}
function Oninit() {
var strUrlCode;
var strBaseCode;
strBaseCode = "";
var strNum;
for( var iCnt=1; iCnt< 99 ;iCnt++) {
if( 1000 <= iCnt ) {
strNum = iCnt ;
}
if( 100 <= iCnt ) {
strNum = iCnt ;
}
else if( 10 <= iCnt ) {
strNum = "0"+ iCnt ;
}
else {
strNum = "00"+ iCnt ;
}
strUrlCode = "<img src='./SAM/" + strNum + ".jpg' width = 100 onclick='ImageOpen(\"";
strUrlCode += "./MOTO/";
strUrlCode += strNum + ".jpg\");'><BR>";
strBaseCode += strUrlCode;
}
document.all.IMG_TARGET.innerHTML =strBaseCode;
}
</script>
</head>
<BODY onload="Oninit()">
<DIV id="IMG_TARGET"></DIV>
</body>
</html>
わかりにくい質問ですいません。
お陰で無事動きました!
ここまで長いスクリプトが必要になるんですね。
本当にありがとうございました。
No.3
- 回答日時:
失礼しました。
サムネイルと元画像は別だったんですねこちらの早とちりでした。
(=w=;
修正。たいしてかわらんけど
<html>
<HEAD>
<SCRIPT TYPE="text/javascript">
function ImageOpen(strName)
{
var img1 = new Image;
img1.src = strName;
var strPalam;
strPalam = "'width=";
strPalam += img1.width;
strPalam += ",height=";
strPalam += img1.height;
strPalam += "'";
window.open(img1.src, "Test", strPalam);
}
</SCRIPT>
</HEAD>
<body>
<img src='サムネイル.jpg' width = 50 onclick='ImageOpen("元の画像.jpg");'>
</body>
</html>
No.2
- 回答日時:
こんな感じ
<html>
<HEAD>
<SCRIPT TYPE="text/javascript">
function ImageOpen(obj)
{
var img1 = new Image;
img1.src = obj.src;
var strPalam;
strPalam = "'width=";
strPalam += img1.width;
strPalam += ",height=";
strPalam += img1.height;
strPalam += "'";
window.open(img1.src, "Test", strPalam);
}
</SCRIPT>
</HEAD>
<body>
<img src='サムネイル.jpg' width = 50 onclick='ImageOpen(this);'>
</body>
</html>
ご回答、ありがとうございます。
この方法で画像のサイズを取得して出来ますね。
ただ、画像が50枚あったら50個書かないといけないんですよね?
No.1
- 回答日時:
こんにちは。
以下のような関数をイメージしてはどうでしょう?
function showThomb(画像参照番号)
{
画像参照番号を使用して画像の高さと幅の変数作成
変数にそれぞれ画像の高さと幅を代入
取得した変数を使用して新しいウィンドウを開く
}
取得する方は、これを実行するとイメージしやすいと思います。
function showThomb(imgNumber)
{
var wd, hg;
wd = document.images[imgNumber].width;
hg = document.images[imgNumber].height;
alert(wd + ":" + hg);
}
※imgNumberは、画像の参照番号を入れてください。
※ゼロからスタートします。
私もJavaScriptはよくわかってないので、理想的な答えかどうかはわかりませんが、頑張ってください!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- デジタルカメラ 挿絵のデジタル画集の作り方をお教え下さい 2 2022/04/01 09:23
- Excel(エクセル) Excel 毎日手作業で時間がかかって、泣きたいです、、、VBAのプロの方、助けてください。。。 3 2022/10/25 04:26
- JavaScript jQueryで同じクラス名のものを別物として扱いたい 1 2022/06/17 14:14
- フリーソフト 倍率自動調整して全画面表示できるフリーの画像ビューアー 1 2023/08/24 10:55
- Windows 8 Route Generator の使い方 1 2023/05/03 00:36
- Instagram Instagramの投稿を、16:9の画像サイズにして、その画像真ん中の、自分のページを見たときの各 0 2023/08/08 00:17
- Excel(エクセル) excelで検索した商品の画像(ネットワーク上の)を表示させたい。 3 2023/06/28 00:32
- PHP $filePath = './user_img/' . $file['name'];? 1 2022/12/10 07:29
- その他(OS) Windowsで大量の画像サイズを半自動で変更する方法 6 2023/02/17 08:45
- その他(パソコン・スマホ・電化製品) アンドロイドスマホの画面にクリックするとJPG写真が開くショートカットを作りたいのですが、方法をおし 3 2023/08/27 10:01
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
複数のバナーをリロードする度...
-
window.openで値の渡し方を教え...
-
一定時間ごとにgif画像の切...
-
jQueryでサーバー上のファイル...
-
画像をクリックすると別ウイン...
-
outlook2010の不具合で困ってい...
-
タイマーをデジタル時計風にす...
-
MAX関数を使ってからLEFT JOIN...
-
MFCで画像を表示させているので...
-
JavaScriptで変更した属性の元...
-
Gifアニメ、最後のコマに行った...
-
クリックで色変更後に既に変更...
-
createElementが一瞬で消えてし...
-
デフォルト非表示にしたい。【t...
-
javascriptテキストBOX色を元に...
-
iframe内のリンクが飛ばないの...
-
Slick.jsのオプションrtlについて
-
onmouseoverの表示切り替えが上...
-
html スクロール要素を下から表...
-
javascriptで教えてください。 ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
window.openで値の渡し方を教え...
-
JavaScriptで画面サイズによっ...
-
jQueryでサーバー上のファイル...
-
画像と文字を同時に切り替えたい
-
インラインフレームでのクッキ...
-
setAttributeによる画像の差し替え
-
【jQuery】複数の画像の読み込...
-
JAVAで画像をボタンで切り替え...
-
画像の座標位置取得
-
連番画像「次へ」「前へ」で、...
-
imgのsrcに値を設定するには
-
画像をクリックすると別ウイン...
-
複数のボールの落下、バウンド...
-
連続したURLへのwindow.openの...
-
JavaScriptで画像置換えてクリ...
-
<img src"○.jpg">の○をランダム...
-
スライドショーにフェード効果...
-
jQueryで画像を重ねる
-
クリッカブルマップでリモート...
-
複数のバナーをリロードする度...
おすすめ情報