jQuery初心者です。
.filterを使って、特定のCSSプロパティの値を持つものを検索し、抽出したもののCSSを書換えたいのですが、うまくいきません。
--------------------
z-indexの値が0以上のdivのwidthを200pxに変えるというコードを書いたつもりなんですが動きません。
※head内
<style type="text/css">
<!--
div.animal {
height:50px;
border:5px solid red;
background:rgb(255,140,0);
}
#neko {
width:50px;
position: absolute;
z-index: 0;
top: 50px;
left: 50px;
}
#inu {
width:50px;
position: absolute;
z-index: 1;
top: 70px;
left: 70px;
}
//-->
</style>
<script type="text/javascript" src="/js/prototype.js"></script>
<script type="text/javascript">
$('div').filter(function(){
return (parseInt($(this).css("z-index").text())>0);
}).css("width","200px")
</script>
※body内
<div id=neko class=animal></div>
<div id=inu class=animal></div>
詳しい方が居られましたら、ご教授いただけませんでしょうか?よろしくお願いします。
No.1ベストアンサー
- 回答日時:
<script type="text/javascript" src="/js/prototype.js"></script>
となっていますが、
jQueryですよね、prototype.jsと併用しているのですか?
もしjQueryだけなら。
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
<script type="text/javascript">
$('div').filter(function(){
return ($(this).css("z-index")>0);
}).css("width","200px")
ですけど...
DOMロード完了後に実行するなら、
$(function(){
$('div').filter(function(){
return ($(this).css("z-index")>0);
}).css("width","200px")
});
です。
回答ありがとうございます。
恥ずかしながら、ご指摘を受けるまでうっかりprototype.jsにしたままでした。無事解決しました。
No.2
- 回答日時:
回答1に無い部分の補足です。
jQueryオブジェクトのCSSメソッドは、エレメントに直接書かれているstyle属性のみを返します。
styleタグや外部CSSの値を取得できないので注意してください。
この辺は少し工夫が必要です。
jQueryを使わなくてもいいような気もしますが、
jQueryで書くなら、jQueryのルート関数のみに存在する内部メソッド「curCSS」もしくは「css」(所謂jQueryオブジェクトのcssメソッドとは別物)を使ってください。
curCSSメソッドはcssメソッドから呼び出されます。
CSSのプロパティがwidthとheight以外なら両者の機能は変わらないので、curCSSを使う方が少し速くなります。
$('div').filter( function() {
return $.curCSS(this, "z-index", true) > 0;
}).css("width", "200px");
ちなみに、
curCSSの第一引数はターゲット・エレメント
第二引数はCSSプロパティ
第三引数は属性値以外のスタイルからも取得する場合はtrue
戻り値は該当するプロパティの値です。
回答ありがとうございます。
curCSSなんてメソッドがあるんですね。初めて知りました。
勉強になりました。ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/30 09:10
- JavaScript 画像の表示位置 3 2022/12/23 08:25
- JavaScript vertical sliderをautoplayしたい 2 2022/08/25 14:47
- JavaScript jqueryを使ったスムーススクロールのコードを書いたのですが、HTMLコード内にある、a butt 2 2022/04/14 10:59
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- JavaScript ソースコードのいじる場所が分かりません。 1 2022/12/23 02:06
- HTML・CSS HTML、cssのatomつぅーやつで 課題Ex1ってやつを表示させたいのですが、 私は課題Ex1が 2 2022/12/15 16:56
- HTML・CSS スクロールすると追従する画像のコードを書いているのですが、追従する画像の大きさの調節が上手くいきませ 2 2022/04/18 12:52
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
複数のjavascriptを使うと動か...
-
ワードプレスでjQuery 右から飛...
-
Base64に変換したHTMLの<script...
-
<a href="#" …>の意味を教えて...
-
cssにjavascriptを入れる?呼び...
-
別ファイルのfunctionの読み込み方
-
テキストをクリックすると答え...
-
iframeの中から親ページをスム...
-
bodyにidをつける理由は何ですか?
-
リンクに飛ばない・・・
-
javascriptファイルは1つに統...
-
<iframe>~</iframe>内のwindow...
-
javascriptでbgmを自動再生する...
-
onbeforeunload時のwindow.open...
-
外部からのjs呼び出しについて。
-
function の return 値を表示し...
-
「jQuery」アニメーションをル...
-
Dreamweaver で 外部JSを読み込...
-
親フレームのURLによって、...
-
文字をクリックすると 小窓が開く
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
base64encodeでの文字化けについて
-
jquery ui.resizable 使い方
-
複数のjavascriptを使うと動か...
-
Base64に変換したHTMLの<script...
-
bxslider、画像が3枚以上になる...
-
Jqueryの干渉について
-
DreamWeaverでJS
-
複数のバージョンのjQueryを同...
-
マウスオーバー+クリカブルマッ...
-
マスターページでのJavaScriopt...
-
jqueryのcolorboxを読込直後に...
-
javascript外部読み込みの際の引数
-
lightbox2 表示の不具合
-
jsファイルで配列を定義し、j...
-
jqueryを2つ設置した事で片方...
-
<script>タグというのはどこか...
-
Javascriptがうまく動作しません。
-
同一HTML内に複数のjQueryを作...
-
jqueryについて(Lightboxとbxs...
-
colorboxの直接呼び出し方法に...
おすすめ情報