のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,645,409人
昨日:no data人
今日:
最近の注目
人気の最安値情報

私的良スレ書庫

不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

元スレJavaScript ライブラリ総合質問所 vol.4

JavaScript スレッド一覧へ / JavaScript とは? / 携帯版 / dat(gz)で取得 / トップメニュー
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
レスフィルター : (試験中)
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
201 : Name_Not - 2014/07/04(金) 20:03:30.75 ID:???.net (+57,+29,-59)
>>200
なぜグローバル空間を汚す実装が良いと思ったのですか?
既存のグローバル変数との競合を考慮しなかったのでしょうか?
202 : Name_Not - 2014/07/04(金) 22:36:02.54 ID:???.net (-1,-29,-73)
>>200
少し前まで「jQuery plugin」がバズワードだったから

なんでもかんでも$に定義するならグローバル変数と大差なし
ユニークな名前のグローバル変数を定義した方がマシ
203 : sage - 2014/07/04(金) 23:45:15.06 ID:???.net (+3,-30,-302)
スクロールエリアでスワイプのイベントをとらえたいのですが
どのようにすればできるでしょうか。
下記のようなソースではできませんでした。
<!DOCTYPE html>
<html>
<head>
<title>My Page</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css" />
<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
<script type="text/javascript" src="http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('#scrollswipe').bind('swipe', function(){
alert("swipe");
});
});
</script>
</head>
<body>
<div id="scrollswipe" style="width:200px; height:200px; overflow:scroll;">
<h1>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</h1>
<h1>bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb</h1>
<h1>cccccccccccccccccccccccccccccccccccccccccccc</h1>
<h1>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</h1>
<h1>bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb</h1>
</div>
</body>
</html>
204 : Name_Not - 2014/07/04(金) 23:48:49.20 ID:???.net (-1,-29,-29)
まず、bindは使うな。これは古いメソッドだ。
205 : Name_Not - 2014/07/04(金) 23:51:29.93 ID:???.net (-2,-30,-35)
$(document).ready(function(){
これは冗長
$(function(){
こう書けば良い。

あとHTML5なら type="text/javascript" は不要。
206 : Name_Not - 2014/07/06(日) 21:57:15.64 ID:???.net (+3,-30,-70)
バージョンを最新の1.4.3にして、
<script src="http://code.jquery.com/mobile/1.4.3/jquery.mobile-1.4.3.min.js"></script>

$(document).ready(function(){ の次の行あたりに
$.event.special.swipe.scrollSupressionThreshold = 10;
を追加。
208 : Name_Not - 2014/07/10(木) 00:18:07.88 ID:???.net (-2,-27,-2)
idとかないの
209 : Name_Not - 2014/07/10(木) 00:28:29.28 ID:???.net (+36,-30,-56)
>>207
var frm="<form id=\"foo\"></form>";
$("hoge").append($(frm).clone(true));
$("#foo").submit();
210 : Name_Not - 2014/07/10(木) 06:54:04.71 ID:cODa6UYa.net (+4,+10,+1)
>>208-209
ありがとうございます!
211 : Name_Not - 2014/07/10(木) 16:47:59.06 ID:???.net (+57,+29,-21)
onscrollイベントの中で、スクロールした座標軸の種類を知ることは出来ないのでしょうか?
座標軸と、移動量を知りたいのですが
212 : Name_Not - 2014/07/10(木) 16:48:28.62 ID:???.net (+2,-20,-13)
↑jqueryの話です
213 : Name_Not - 2014/07/10(木) 16:54:02.83 ID:???.net (+28,-29,-20)
onscrollイベントのたびに座標をcheckして自分で検出するしかないでしょうか?
214 : Name_Not - 2014/07/10(木) 18:56:00.09 ID:???.net (+54,+28,+1)
>>213
そうですね
215 : Name_Not - 2014/07/10(木) 19:17:18.70 ID:???.net (+51,+28,+0)
そうですか
ありがとうございました
216 : Name_Not - 2014/07/10(木) 22:43:47.52 ID:???.net (+36,+7,-7)
>>209
IDいらんだろ?
余計なコード書くなよ
217 : Name_Not - 2014/07/10(木) 22:44:33.14 ID:???.net (+47,+14,-27)
>>209はcloneもいらんし。
なんでこう無駄なコード書くかなー。
218 : Name_Not - 2014/07/17(木) 16:29:02.00 ID:???.net (+2,-30,-101)
idがabcのtrタグ内にある、nameが_defで終わるタグをリストしたい。
一番スマートな方法は?

<tr id="abc">
<td><input name="fas_def" /></td>
<td><input name="sec_def" /></td>
<td><input name="thr" /></td>
<td><input name="fou_def" /></td>
<td><input name="fif" /></td>
<td><input name="six_def" /></td>
</tr>
219 : Name_Not - 2014/07/17(木) 16:30:01.27 ID:???.net (-1,-29,-19)
まちがえた!

nameが_defで終わるタグをリストしたい。

nameが_defで終わるnameをリストしたい。
220 : Name_Not - 2014/07/17(木) 16:32:01.20 ID:???.net (-2,-30,-18)
こんな感じの配列がゲットしたい!
@q = ('fas_def','sec_def','fou_def','six_def')
221 : Name_Not - 2014/07/17(木) 17:24:22.18 ID:???.net (-1,-29,-1)
>>218
querySelectorAll
222 : Name_Not - 2014/07/17(木) 19:23:34.04 ID:???.net (+5,-27,-135)
jQuery初心者で勉強中の者です。

http://calie.jp/beashow/index.htmlのサイトのような
画像を読み込んだら自動で画像がフェードインしエフェクトが動く動きを実現するには

jquery.inview.jsとjquery.easing.1.3.js

が必要だということはわかったのですが、どのように記述すれば実現できるのかがわかりません。
画像をよみこんでフェードインさせた画像を左右上下にエフェクトをかけて表示させる方法を詳しい方ご教授いただけないでしょうか

画像をフェードインさせるところまでは一人でできました。→ttp://aruearoe.com/
223 : Name_Not - 2014/07/20(日) 09:48:52.96 ID:???.net (-22,-29,-52)
jqueryで
プラグインで追加されたメソッドの一覧を知る方法ありますか?
226 : Name_Not - 2014/07/20(日) 14:32:20.76 ID:???.net (+50,+27,-6)
意味不明の誘導だな
227 : Name_Not - 2014/07/22(火) 21:19:07.69 ID:isSDeZ8Bx (+51,+26,-13)
このサイトの透明の上の部分は
何て名前のJavaScriptライブラリ使ってるかわかりませんか?
http://www.mangazenkan.com/
229 : Name_Not - 2014/07/23(水) 10:36:43.19 ID:???.net (+79,+29,-79)
まず、クリックされたh3をセレクトできないと始まらないが
「クリックされた要素」はどうやってセレクトする?

その上で p すべてとは、
pの個数は決まってるのか?
pは連続しているのか?
230 : 227 - 2014/07/23(水) 10:42:42.92 ID:???.net (+43,+0,-98)
>>229
ありがとうございます。
pの個数は決まっていません。
pは連続しています。つまりh3の下にはpが連続して出現し、
またh3が来ます。
隠したいのは次のh3が出現するまでp全てということです。

クリックされたh3はクリックイベントの中の$(this)で取得しようと
思っていましたが、ダメでしょうか?
231 : 227 - 2014/07/23(水) 11:32:58.53 ID:???.net (+36,-30,-153)
なんとか自己解決しました。

クリックされたh3を$(this)でとりまして、

var next = $(this).nextAll(); でh3以降の要素をすべて取得します。
nextをeach() で回して、p だったら hide() して、h3が出現したら
return falseでeachを出ます。

これで狙った挙動を実現できました。

やりたいことをここに書いていたら、アイデアが出ました。
ありがとうございます。
232 : Name_Not - 2014/07/23(水) 11:55:09.49 ID:???.net (+93,+29,-43)
>>231
h3とp要素をsectionやdivでかこってしまえばもっと簡単に書けるし早くなるんじゃね?
と思ったがこういうのは余計なお世話か
233 : Name_Not - 2014/07/23(水) 12:12:12.44 ID:???.net (+141,+29,+0)
>>232
普通はそれが正しい。
234 : 227 - 2014/07/23(水) 13:29:41.38 ID:???.net (+92,+29,-52)
>>233
>>233
おっしゃる通りなのですが、今回別ソースから動的にHTMLを引っ張ってきて、
それに対してアコーディオン効果を付けたい、という要望でして。
元のHTMLはむやみに触れない状況だったのです。

せめて連続するp要素がdivで囲われていれば、一発だったのですが。
237 : Name_Not - 2014/07/25(金) 10:24:41.48 ID:???.net (-11,-30,-11)
>>236
動的に内容が変更されるイベントにフックして $(this).prepend('bb'); すればいいだけだと思うけど
238 : 235 - 2014/07/25(金) 10:38:57.22 ID:???.net (+3,-29,-93)
this じゃ無理か
イベントを貼り付けた要素にも依るが、event.target.ownerDocument あたりか

> phpのページ送り(URL、パラメーターは変更なし)のボタンをクリックすると
動的変更でもURL、パラメータは変更すべきでは?
239 : Name_Not - 2014/07/25(金) 13:57:06.62 ID:???.net (+14,-30,-149)
>>236
答えじゃないが、コードが冗長だよ。無駄が多すぎ。

> $(document).ready(function(){
> $('.aa').each(function () {
> $(this).prepend('bb');
> });
> });

readyは、$(function()・・・と書くのが推奨されたやり方

$(function(){
$('.aa').each(function () {
$(this).prepend('bb');
});
});

eachで回してthisとか意味ない。

$(function(){
 $('.aa').prepend('bb');
});
240 : 235 - 2014/07/25(金) 18:48:43.36 ID:???.net (+53,+29,-3)
いろいろ勘違いしていたので>236は忘れてくれ
241 : 234 - 2014/07/26(土) 01:10:00.69 ID:???.net (+7,-30,-203)
質問の内容は実は
wordpressのFAQManagerというプラグインでの話になります。

動的変化した後のページにパラメーターがないというのは厳密には間違いでした。
2頁目に行ってもブラウザのアドレス欄のURLは変更なし(パラメーターも付いていない)
のですが、2ページ目のリンクをクリックするときのURLを見たら
パラメーターが付いてました。
http://ドメイン/?p=183/?faq_page=2 のようなカタチです。

だいぶ強引ですが、リンクをクリックした際にクリックイベントで.prepend()を
してみたのですが効きませんでした(クリックした瞬間だけ一瞬効きます)
242 : Name_Not - 2014/07/26(土) 03:16:12.40 ID:???.net (+24,-29,-9)
>>241
動的変化が非同期なんじゃない?
非同期処理後に prepend しないといけない
243 : 239 - 2014/07/27(日) 10:11:02.01 ID:???.net (+119,+7,-78)
>>242
そうなのかもしれません。
処理後に prependをどうやったらかけれるのかがわからなくて・・。

試しにページャーの数字をクリックしたらページリロードするようにしたら
何頁目が表示されていようが1頁目が表示されるようになるだけでしたw
244 : Name_Not - 2014/07/27(日) 11:50:57.84 ID:???.net (+125,+29,-137)
>>243
> 2ページ目のリンクをクリックするときのURLを見たらパラメーターが付いてました。
リンク先URLと動的変化後のURLが一致しないのは好ましくない
動的変化後もURLが変化すべき。

>>243
ならば、FAQManagerの説明書を読んで処理後のコールバック関数を否定できないか読む。
なければ、コードを読んで該当コードを改変する。
そして、作者にフィードバックしておく。そうすれば、次回バージョンアップ後も自前で改変しなくて済む。
245 : 239 - 2014/07/28(月) 00:13:11.90 ID:???.net (+78,+29,-64)
>>244
どんなソースかもわからない状態で
わかる範囲でのベストなお答えいただき有難うございました。

phpのコールバックをjQueryで受け取るなど自分には敷居が高いので
別の方法を模索してみます

ありがとうございました
246 : Name_Not - 2014/07/30(水) 16:08:25.00 ID:???.net (+16,-30,-245)
<script type="text/javascript">
var area = "";
function eachFunc(index, elem) {
if($(elem).find("input").attr("checked")){
var text = $(elem).find("span").html();
area = area + text;
}
}

$(function() {
$("button").click(function(){
$(".test").each(eachFunc);
$("textarea").val(area);
})
});
</script>

<div class="test">
<input type='checkbox' name='sou' value='sou' checked />
<span>テスト1<br /><br /></span>
</div>

<div class="test">
<input type='checkbox' name='sou' value='sou' checked />
<span>テスト2</span>
</div>

チェックボックスがONのspanからHTMLを取り出し、テキストエリアに入れたいのですが、ON・OFF関係なくすべてテキストエリアに入ってしまいます。
たぶんif文が悪いんだと思うんですけど、どうすればいいですか?
247 : 244 - 2014/07/30(水) 16:41:23.99 ID:???.net (+38,+15,+0)
自己解決しました
249 : Name_Not - 2014/08/05(火) 20:24:32.64 ID:???.net (-1,-30,-47)
>>248
$('.on').click()は、実行した時点でclassがonの要素にハンドラを仕掛けるだけで、
その後classを変更してもハンドラが差し替わるわけじゃない
250 : Name_Not - 2014/08/06(水) 11:02:05.28 ID:???.net (+3,-29,-43)
なるほど、この場合「off」というクラス名が最初に存在しないので$('.off').click()が処理できないということですね
これを踏まえて構成を考え直したら、やりたいことが実現できました。ありがとうございました
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

類似してるかもしれないスレッド


トップメニューへ / →のくす牧場書庫について