javascriptで質問です。下記のようなjQueryで記述が重複している部分を簡略化したいと思っています。ご教授いただけますでしょうか。


var linkHeight = $(window).height();

var divLink = $("#link").height();
if(divLink < linkHeight){
$("#link").css("height",linkHeight);
};

var divDealer = $("#dealer").height();
if(divDealer < linkHeight){
$("#dealer").css("height",linkHeight);
};

var divAbout = $("#about").height();
if(divAbout < linkHeight){
$("#about").css("height",linkHeight);
};

初歩的な質問で恐縮ですが、よろしくお願いします。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2011/08/10 18:02:07
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答2件)

id:sheile No.1

回答回数45ベストアンサー獲得回数16

ポイント150pt

検証用のHTMLページが無いので多少変更する必要はあるかもしれませんが、

以下のようなスクリプトでいけると思います。

var linkHeight = $(window).height();

$("#link,#dealer,#about").each(function() {
  var divHeight = $(this).height();
  if(divHeight < linkHeight) {
    $(this).css("height",linkHeight);
  };
});
id:dmt13

有難うございます!セレクターをまとめる方法が有るのですね。勉強いなりました。

2011/08/10 17:58:55
id:a-kuma3 No.2

回答回数4973ベストアンサー獲得回数2154

ポイント150pt

ちょっと、ベタな感じのをひとつ。


function adjustHeight(e, h) {
    if(e.height() < h){
        e.css("height", h);
    }
}

var linkHeight = $(window).height();

adjustHeight($("#link"), linkHeight);
adjustHeight($("#dealer"), linkHeight);
adjustHeight($("#about"), linkHeight);
id:dmt13

有難うございます!関数にする方法もあるのですね。勉強になりました。

2011/08/10 18:01:34

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません