【誰か】jQueryのここがわからない【助けて】at TECH
【誰か】jQueryのここがわからない【助けて】 - 暇つぶし2ch559:デフォルトの名無しさん
11/03/09 07:52:18.56
>>557
良く分からんがパッと見た目156行目に下記を追加で>>558の動作になりそうな気がする?
※defunkt-facebox-cbe32e1/src/facebox.js
if( $(this).hasClass("facebox") ) klass = "facebox";

560:デフォルトの名無しさん
11/03/09 14:51:27.87
>>550

.live() 使えばいけるだろ

561:デフォルトの名無しさん
11/03/13 21:25:36.52
スレリンク(hp板:462-484番)


562:デフォルトの名無しさん
11/03/17 04:42:21.37
>>550
$("div.hoge").each(function(index, elem) { $(elem).attr("id", "hoge"+(index+1));});

563:デフォルトの名無しさん
11/03/18 07:59:45.29
お腹すいた

564:デフォルトの名無しさん
11/03/18 09:23:32.68
コンビニ行っても何も無いよね
自宅警備中のニートには辛いわ


565:デフォルトの名無しさん
11/03/19 20:14:43.46
おなかすいたお

566:デフォルトの名無しさん
11/03/21 09:35:57.43
爆発を見た日に買い貯めした食料が底を尽き掛けている
今日は雨なので外に出たくない


567:デフォルトの名無しさん
11/03/21 11:31:27.71
日記はチラシの裏にでも(ry

568:デフォルトの名無しさん
11/03/22 09:08:16.15
牛乳が

牛乳が買えたお

569:デフォルトの名無しさん
11/03/22 22:38:16.53
いつものと違う見慣れない牛乳がやっと手に入った
次はトイレットペーパーだ

570:デフォルトの名無しさん
11/03/24 13:23:56.64
コンビニにゴハンがない

571:デフォルトの名無しさん
11/03/24 18:03:12.35
水も無くなった ><

572:デフォルトの名無しさん
11/03/24 21:22:20.22
iPhone用のサイトなんだけど、thickboxつかってモーダルウィンドウ出すと
オーバーレイで暗くなる部分が寸足らずで、下のほうが明るいまま。
だれか助けて(´;ω;`)

573:デフォルトの名無しさん
11/03/24 22:34:22.72
なんで今頃ちっくぼっくす使ってんだ




















今頃w

574:デフォルトの名無しさん
11/03/26 02:39:38.71
牛乳が買えない

575:デフォルトの名無しさん
11/03/26 09:16:15.53
おい!
セブンに見たことの無い牛乳が!

576:デフォルトの名無しさん
11/03/26 17:45:53.95
ローソンでも見たこと無い牛乳が入荷して来てる
うちの近所だとセブンイレブンの方が圧倒的に物量で勝ってる

577:デフォルトの名無しさん
11/03/26 18:02:20.94
以下のソースで、各リンクをクリックしたときのイベントを登録しようとした場合、例1と例2ではどちらが正しいのでしょうか?
どちらも同じ動きをするのですが、eachを使って要素分まわしながら登録するべきなのか、使わなくてもいいのかわかりません。

<a class="link">テスト</a>
<a class="link">テスト</a>
<a class="link">テスト</a>

例1
$(document).ready(function(){
$('.link').each(function{
$(this).click(function(){
//処理~
});
});
});

例2
$(document).ready(function(){
$('.link').click(function{
//処理~
});
});

よろしくお願い致します。

578:デフォルトの名無しさん
11/03/26 18:40:23.83
東京の放射線量って今どのくらいなんだろ
来週出張なんだけどやだなぁ

579:デフォルトの名無しさん
11/03/26 19:19:10.69
>>577
2の方で良い。動的に追加したエレメントにも対応させたきゃliveね。


580:デフォルトの名無しさん
11/03/26 19:51:24.77
>>578
URLリンク(park30.wakwak.com)


581:デフォルトの名無しさん
11/03/26 20:12:14.96
URLリンク(ftp.jaist.ac.jp)

582:デフォルトの名無しさん
11/03/26 20:38:24.57
えびぞーとまおが九州に逃げててワロた

583:デフォルトの名無しさん
11/03/26 23:13:47.16
>>579
ご回答ありがとうございました。

584:デフォルトの名無しさん
11/03/26 23:17:04.06
>>580
またピンポイントでウンコなサイトを紹介してきたね

585:デフォルトの名無しさん
11/03/27 07:36:08.01
>>582


586:デフォルトの名無しさん
11/03/29 07:05:00.18
パンが売ってないお

587:デフォルトの名無しさん
11/03/29 10:31:30.57
パンが無ければケーキを食え

588:デフォルトの名無しさん
11/03/29 10:42:35.98
小麦粉スレが見つからないよ
どこ?

589:デフォルトの名無しさん
11/03/29 11:51:56.32
attr("abc")
で、ランダムでタグに属性を追加しました。

ページ内で、追加した"abc"を持つタグのみを抽出したいのですが、できますか?

590:デフォルトの名無しさん
11/03/29 11:59:58.71
>>589
> attr("abc")
> で、ランダムでタグに属性を追加しました。

それじゃ、属性追加できないんじゃないかな。属性を追加するためには、.attr( attributeName, value ) でないといけないだろ。
で、追加したものは$('*[name="value"]')で選択できると思う。

591:デフォルトの名無しさん
11/03/29 12:12:57.29
>>590
>attr( attributeName, value ) でないといけないだろ。
そのとおりでした。

alert($(["abc"]));
で表示すると、objectが表示されているので、大丈夫そうでした。
この状態で、"abc"が含まれているオブジェクトのIDを順に取得したいのですが、
これもできるのでしょうか?


592:デフォルトの名無しさん
11/03/29 12:18:27.33
>>591
何をしたいのかいまひとつ分からんが.eachを使えばできるじゃね?
URLリンク(semooh.jp)

593:デフォルトの名無しさん
11/03/29 12:51:18.82
>>592
なにかうまくいきません。下記のようなことがしたいです。
1.画面上の一部のinput,select項目に、属性"abc"を追加しています。値はすべてバラバラです。
2.ボタンを押下すると、画面内のオブジェクトをサーチし、
  属性"abc"をもつ項目のみ抽出したいです。
3.抽出した結果、input,selectで入力した値と、属性"abc"を比較して、
  同じであれば、エラーにしたいです。

で、下記のコードを教えて頂いた内容とともに書いてみました。
$('*["abc"]').each(function()
{
i++;
}
);

alert(i);

私の考えでは、表示される項目が30個("abc"の属性を持つものが30個なので)のはずですが、
iが150とかになります。
おそらく"abc"の属性をもつ項目以外も抽出されてるのではないかと思います。
なにかがおかしいとは思いますが、見当がついてないです。


594:デフォルトの名無しさん
11/03/29 14:51:57.54
なにかがおかしいとは思いますが、見当がつかないので
実際に使ったコードを載せてください

595:デフォルトの名無しさん
11/03/29 15:04:50.61
そうそう。説明がヘタなら本物をさらさないとレスが増えるだけで話がすすまない

596:デフォルトの名無しさん
11/03/30 07:19:58.89
>>593

var $body = $('body');
$body.contents().detach();
var $form = $('<form />').appendTo($body);
for(var i = 0; i < 10; i++){$form.append('<input />')};
var $inputs = $form.children();
$inputs.each(function(i){if(i%3 == 0){$(this).attr('abc', i)}});
var j = 0;
$('input[abc]').each(function(){j++});
alert(j);

URLリンク(jquery.com) を開いて、Google Chromeのコンソールにこのコードを入力すると、「4」と表示される。

597:デフォルトの名無しさん
11/04/03 19:51:49.76
domをzen codingのような形式で全部吐き出せるようなプラグインって無いかな
文章も込みで


598:デフォルトの名無しさん
11/04/06 19:42:23.67
<select>のプルダウンメニューで、選ばれた時に、特定の要素をトグルにしたいのですが、
selectもchangeもclickも、うまくいきませんでした。

プルダウンメニューの特定の項目が選択されたら、それに対応する要素にtoggleClassさせる方法はありますか?

599:デフォルトの名無しさん
11/04/06 20:18:32.73
自己解決しました

600:デフォルトの名無しさん
11/04/07 04:48:57.22
質問投げといて解決したって言うのに結果もロクに示さない自己マンは公共の場所へ来るなよ

601:デフォルトの名無しさん
11/04/07 08:17:13.43
JQuery mobileで
リンク先をexternalにすると
transitionが使えなくなるんですけど
何かいい解決方法を知っている
人いないでしょうか


602:デフォルトの名無しさん
11/04/08 17:31:40.84
スマートフォンサイトでjcarouselliteを使っているのですが
スマホで更新を行うとDiv内の要素が無視されて下のdiv要素が
上からかぶってしまいます。
リンクタグを押して再度画面を表示すると、きちんと表示されます。
Androidのブラウザのバグだと思いますが、例外的でもいいので
対処法は御座いますでしょうか?

<script type="text/javascript" src="./jquery-1.3.2.min.js"></script>
<script type="text/javascript" src="./jcarousellite_1.0.1.min.js"></script>

603:デフォルトの名無しさん
11/04/08 18:27:34.25
>>602

自己解決しました。
画像の高さ指定を行っていなかった為、jcarouselliteが高さを認識
できずにつぶれていました。

604:デフォルトの名無しさん
11/04/14 11:49:40.30
toggle() や slideToggle() で折りたたみを開く際に大きくサイズオーバーしてしまいます。
隠す要素にリストなどのブロックを float で横並びにさせたものがあると起こるようなのですが、
回避策はないでしょうか?
よろしくお願いします。

605:デフォルトの名無しさん
11/04/14 12:29:09.99
どえらいおおざっぱな質問だな
ソースを見てどの要素が崩れるか見てみないと答えようがない

606:Perl忍者lvl4 ◆M5ZWRnXOj6
11/04/15 22:57:59.75
getJSONで取得したjsonを配列にいれて使いたいんだけどどうやればいいの?

[ 'hage.jpg','baka.jpg','aho.png']
っていうjsonファイルあったらさ

getJSONで読み込んで配列にいれて

hage.jp,baka.jpg,aho.jpgの3個 配列MAXまで繰り替えして
html生成したいんだけど
<a href="hage.jpg">hage.jpg</a>
<a href="baka.jpg">baka.jpg</a>
<a href="aho.jp">aho.jpg</a>

やりかたおしえてください!!!!!!

607:Perl忍者lvl4 ◆M5ZWRnXOj6
11/04/15 22:59:45.58
ああああ・・・できそうです

608:デフォルトの名無しさん
11/04/19 15:04:11.39
1つのページで複数の jQuery UI ダイアログを使う場合の定義の仕方がわかりません。
ダイアログが1つの場合は、
<script type="text/javascript">
<!--
jQuery(function($){
$('#button1').button();
});
$(function(){
$("#dialog1").dialog({
//autoOpen:false等ダイアログプロパティの定義
buttons: {
//ボタンの定義
});
$("#button1").button().click(function(){
$("#dialog1").dialog("open");
});
});
-->
</script>
で、画面表示時はdialog1は非表示になっており、button1がクリックされるまでは
表示されないという動作ができています。
ここに新たな、同じようなダイアログとボタンの組み合わせを設けたい場合、
どのように定義すればよいでしょうか?

609:608
11/04/19 15:15:11.27
補足です。>>608で書いたダイアログとボタンの組み合わせを同様な書き方で
2つ(dialog1、button1、dialog2、button2として)定義してみましたが、
それでは上手く動作しませんでした。
動作環境は、Firefox3.6.16とjquery-ui-1.8.7.custom.min.jsを利用しています。

610:デフォルトの名無しさん
11/04/19 16:02:44.46
dialog1とかそれぞれの意味は理解してるの・・・?

611:デフォルトの名無しさん
11/04/19 19:29:25.03
111 :Perl忍者 ◆M5ZWRnXOj6 :2010/12/14(火) 17:37:22 ID:rQueV4DL
javascriptをやってるやつは低能なんだろ
ゴミ頭がごみめら
マジ可哀想なんていうかかすそのもの
javascriptwwwwwwwwwwwwwww
ウェブサイト?wwwwwwwwwwwwww
わらわせんじゃねえよごみめら
URLリンク(www2.atpages.jp)

Perl忍者だけどさあークズプログラマども
スレリンク(php板)
IT業界潰れろby、Perl忍者
URLリンク(unkar.org)

612:デフォルトの名無しさん
11/04/19 19:32:54.67
そんなもの貼らんで良い

613:デフォルトの名無しさん
11/04/20 22:51:02.90
<div>
<form
テキストフィールド、ボタンなど
/form>
</div>

ボタンを押すと↑のようなフォームがslideDown、slideUpで表示させたり消したり
させる物と作ってます。
slideDownの時はいいんですがslideUpの時に
徐々にフォームが消えていって消える直前にフォーム全体が一瞬表示されて
その後完全に消える状態になってしまっています。
フォームのmarginを無くしたり<P>で包んで見たりと色々と試してみたのですが解決できません
何かわかる方お願いします。

614:デフォルトの名無しさん
11/04/20 23:19:43.45
>>613
ブラウザとバージョンは?
あと実際のコード


615:デフォルトの名無しさん
11/04/21 08:12:21.27
>>614
遅くなり申し訳ない
IE8です。っていうかIE以外CSSがまったく読み込まれてなかったなんでだろ?
まぁその辺は自分で解決します

実際のコードは
$(function(){
$("#info div").css("display",'none');
$(".s_btn").click(function(){
if($($(this).attr('href')).css('display')=='none'){
$("#info div:not($(this).attr('href'))").slideUp('slow');
$($(this).attr('href')).slideDown();
}else{
$($(this).attr('href')).slideUp();
}
})
})

実際にはslideさせるフォームはいくつかあり
それぞれのフォームに対応したボタン(クラス属性をs_btnとしています)があります。
s_btnのhref属性を#****としていて
その#****に対応したフォームをslideさせています。
わかりにくい説明で申し訳ありませんがお願いします。

616:613
11/04/21 08:43:31.64
>>614
jqueryのヴァージョンは1.5.2です。
よろしくお願いします。

617:デフォルトの名無しさん
11/04/21 08:51:19.58
以下のような場合、imgタグbrタグの閉じタグ手間にスラッシュが入らないのですが入れるにはどうすればいいですか?

$("<li />").addClass("lists")
.append($("<img />").attr("src", group$thumb[0].url)).append("<br />")
.append(item.title.$t).append("<br />")

実行する
<img src="xxx"><br>

こうしたい
<img src="xxx" /><br />

618:613
11/04/21 09:21:20.71
すいません
自己解決しました。
ドキュメント宣言してなかったのが原因みたいです
時間を割いてくださったかたありがとうございました。

619:デフォルトの名無しさん
11/04/21 21:37:02.19
>>615
なんかよくわからんコード書いてんなw
もうちょっと整理してみ
あとhrefのidはformタグにふってんの?
不具合が再現できるhtmlのソースも張ってよ

620:デフォルトの名無しさん
11/04/25 11:34:50.53
ポップアップウィンドウですが、下のwindow.openを
GreyBoxやlightboxを使った時のように表示したいと思います。
これを使え!や、こうすればよいの様なポインタをお願いします。

$('#i').change(function(){
window.open($(this).val(),'','width=150');
return false;
});

621:デフォルトの名無しさん
11/04/25 12:02:29.43
>>620
えーと… lightbox的なオーバーレイで、DIVなどのHTML要素か、IFRAMEを表示したい、ということでよいかな。
例えば、URLリンク(jquery.com) の Examples の iFramed Content の Demo みたいなことをしたいと?

そういうことができるjQueryプラグインはいくつもあるようなので、どれをお勧めしたものか…
「jQuery lightbox」か「jQuery overlay」で検索すれば、いろいろ出てくるよ。


622:621
11/04/25 12:12:08.19
あ、Thickboxは「メンテナンスされていないから別のをつかえ」って書いてあるね。
まぁ、いろいろあるから、どれを使うかはググって自分で判断してくれ。

623:デフォルトの名無しさん
11/05/02 00:20:38.40
ie9だとフェードできない時あるね

624:デフォルトの名無しさん
11/05/05 14:56:03.60
質問です
loadメソッドで別ファイルを読み込むのには成功したんですが、
別ファイルにjavascriptでウィジェットのようなものをふくんでいる場合にうまくウィジェットが表示されません
やはり非同期ポストバックじゃだめなのでしょうか?
例えばこういうウィジェットです
URLリンク(www.oricon.co.jp)

625:デフォルトの名無しさん
11/05/06 03:54:16.92
>>624
中見てないから分からんけど多分 document.write使ってんだろ
iframeの中に読み込んでやるかDOM構築終わる前にロードするかdocument.writeをオーバーライドするかってとこか

626:デフォルトの名無しさん
11/05/09 17:23:14.76
質問です
window.parent.document.getElementById('hoge');
↑をjQueryで表現して$('#hoge').hide();みたいにするにはどうすればいいのでしょうか?

627:デフォルトの名無しさん
11/05/09 17:25:49.65
1.6の更新内容をまとめて

628:デフォルトの名無しさん
11/05/13 12:35:03.43
$(this)とthisの違いがわかりません。

例えば、要素のインデックスを取得するindex()というメソッドですが
使い方は以下のように紹介されていることが多いですが、

$('.list').index(this);

上記サンプルの this を $(this) と置き換えても動くのですが、$(this)と指定するのは間違いでしょうか?
thisと$(this)ではどのような違いがあるのでしょうか?

よろしくお願い致します。

629:デフォルトの名無しさん
11/05/13 14:45:16.53
>>628
$(this)ってやると、jQueryの面白機能がついたオブジェクトに返信する
thisのままだと面白くない

630:デフォルトの名無しさん
11/05/13 14:53:20.23
>>629
ありがとうございます
thisオブジェクトを拡張してるということでしょうか?
ラッピングすることで新たなメンバーメソッドやメンバー変数などが追加されたみたいな

631:デフォルトの名無しさん
11/05/13 15:56:58.66
拡張してるというか変換してる
thisはJavaScriptのthis、DOMのthis
$(this)はjQueryオブジェクト

632:デフォルトの名無しさん
11/05/13 16:08:15.34
thisが本郷猛なら$()がライダーベルトだな

633:デフォルトの名無しさん
11/05/13 21:55:39.07
>>631
横からだけどそうだったのか
ただわかりやすいからってだけだと思ってた
あとthisってjQueryオブジェクトじゃなかったんだね

634:デフォルトの名無しさん
11/05/14 13:21:33.39
jQueryってこれフレームワーックって言うより、違う言語じゃね?

635:デフォルトの名無しさん
11/05/14 13:36:02.14
>>634
いやもろにjavascriptだろ
違う言語にはなってない

636:sage
11/05/14 17:32:27.74
jQuery1.6はやい。

637:デフォルトの名無しさん
11/05/15 03:25:25.77
jquery.1.4.2から1.5,1.6に変えると、3倍ぐらい遅くなった。

HTMLの書き換え処理なんだけど、遅くなった?

638:デフォルトの名無しさん
11/05/15 11:25:55.08
>>637
うん、だいぶ高速化されたよ

639:sage
11/05/15 13:24:06.56
高速化されましたよね。。
なぜ、遅くいのでしょう。pluginとバージョンの相性があるんですかね。

640:デフォルトの名無しさん
11/05/15 13:30:11.85
>>639
プラグ印使ってんの佳代
名に使ってんの蚊教えれ

641:sage
11/05/15 13:35:38.09
flexgridです。
URLリンク(flexigrid.info)

642:デフォルトの名無しさん
11/05/15 13:59:50.77
>>641
おいおい最新版使えよ

643:デフォルトの名無しさん
11/05/15 14:00:43.71
プラグインのコード読んでみたらいいじゃない

644:デフォルトの名無しさん
11/05/16 22:05:37.44
jqueryを学びはじめたばかりなのですが
$("div").find("span")と
$("div span")って
同じですか?どっちがいいんですか?
ほかにも同じようなことをいろんな書き方でできるような感じですが
とりあえず思い通りに動けばあんまり気にしなくてもいいんですか?

645:デフォルトの名無しさん
11/05/16 22:09:08.87
>>644
ちょっぴりだけ$("div span")の方が速い。

が! 10000回くらいループ計測して自分で速度を測るといいと思う。

646:644
11/05/16 22:18:12.92
>>645
どうもありがとうございますm(_ _)m

647:デフォルトの名無しさん
11/05/16 23:43:44.97
>>644
find()の使いどころは、たとえばhogeに何が入るか不定の時は、
hoge.find("span").~~~~
と書けるので便利

あるいは、
$("div").show().find("span").~~~
とずらずら書いたりとか

648:デフォルトの名無しさん
11/05/17 00:42:38.86
こうして何も知らない純粋な若者が騙されて餌食になるんだな

649:デフォルトの名無しさん
11/05/17 02:31:07.57
ちょっぴりだけ$("div > span")の方が速い。

650:デフォルトの名無しさん
11/05/17 08:52:20.94
その結果はdiv spanとは同じではないから当たり前だろ・・・



651:デフォルトの名無しさん
11/05/17 12:54:10.75
>>647>>649
どや顔でレスしてると思うとwwww

652:デフォルトの名無しさん
11/05/17 14:01:05.96
>>647の指摘ほ的確だと思うけどな

653:デフォルトの名無しさん
11/05/17 15:40:24.16
>>651
おまえかわいそう。

654:デフォルトの名無しさん
11/05/18 22:32:16.92
テキストノードをjQuery要素のまま値を取得したり設定したりするにはどう書けばいいですか?
↓うまくいきません
var str = $('#hoge').contents().not('[nodeType=1]').eq(0).text();
$('#hoge').contents().not('[nodeType=1]').eq(0).text('hoge');

↓jQuery要素からDOMに変換(?)するとnodeValueで取得したり設定したりできたんですが
var str = $('#hoge').contents().not('[nodeType=1]').get(0).nodeValue; //取得
$('#hoge').contents().not('[nodeType=1]').get(0).nodeValue = 'hoge'; //設定

655:デフォルトの名無しさん
11/05/19 05:58:41.74
var str = $('#hoge').text();
$('#hoge').text('hoge');

何がやりたいのかよくわからないけど、これじゃダメなの?

656:654
11/05/19 06:55:41.63
ああ、すみません、HTML側はたとえばこんな感じです
<div id="hoge">
aaaa
<p>bbbb</p>
cccc
</div>

657:654
11/05/20 07:52:12.02
やっぱりjQueryのままじゃ無理ですか?DOMにしてnodeValueで取得設定するしかないですか

658:デフォルトの名無しさん
11/05/20 10:57:26.50
bbbbの部分を取得したり書き換えたいってこと?


659:デフォルトの名無しさん
11/05/21 00:04:31.21
クリックしたら、ページを暗くして、画像や文章などを中央に表示して、
関係の無いところを押すと元に戻るみたいなのがありますが、
これのJqueryでのサンプルが載っているページをご存じないでしょうか?

660:デフォルトの名無しさん
11/05/21 10:28:33.86
lightboxでググれ

661:デフォルトの名無しさん
11/05/22 09:24:23.00
質問
なんでこのスレtechにあんの?

662:デフォルトの名無しさん
11/05/22 10:27:40.70
>>661
jQueryというかjavascriptをブラウザでしか使ったことが無いだろお前。

663:デフォルトの名無しさん
11/05/22 21:01:21.70
ブラウザで動かす以外に用途あるの?

664:デフォルトの名無しさん
11/05/22 21:18:06.81
>>663
wsh
デスクトップ ガジェット

でググれ


665:デフォルトの名無しさん
11/05/23 04:12:20.29
JScriptをガシガシ使ってますが?
で、なんでこの板にあるわけ?

666:デフォルトの名無しさん
11/05/23 06:44:05.13
jQuery歴2週間の>>1が単発質問で立てたスレだし、当初から板違いの指摘がある。
もったいないから使ってるだけ。
次スレはWEB制作板でもWebProg板でも移動させたらいい。

667:デフォルトの名無しさん
11/05/23 17:25:59.45
lightboxで中に画像ではなくHTMLを貼りつけられるようなの御存知ありませんか?

668:デフォルトの名無しさん
11/05/23 17:54:11.51
lightbox htmlでググれ

669:デフォルトの名無しさん
11/05/24 23:18:25.74
親画面と小画面でdatepicker(1ヶ月分をカレンダーのように表示)を
それぞれ同時に表示したいんですけど
datepickerの大きさをそれぞれ任意の大きさに変えるにはどうしたらいいですか?
cssで大きさを指定してしまうと、二つとも共通のcssを読み込んでるので
同じ大きさになってしまいます。
二つのdatepickerを自由に大きさを指定するにはどうしたら良いですか?
どなたか教えてください。

670:デフォルトの名無しさん
11/05/24 23:37:53.77
あげます

671:デフォルトの名無しさん
11/05/25 11:32:51.36
>>669
idつければいい

672:デフォルトの名無しさん
11/05/25 20:47:45.81
>>699
やり方はいろいろあると思うけど、
例えば、Datepicker全体をdivとかで囲んでしまって、
そのdivに親と子で違うIDを指定する

// 親
<div id="parent"><!-- ここはDatepicker --></div>

//子
<div id="parent"><!-- ここはDatepicker --></div>

で、スタイルシートのほうで

#parent #datepicker {
 // 親のスタイル
}

#child #datepicker {
 // このスタイル
}

とかすれば、大きさを指定している部分だけの修正で修正範囲も少ないとおもふ

673:デフォルトの名無しさん
11/05/26 19:32:15.44
<textarea id="hoge"></textarea>
--------------------------------------------
$("#hoge").text("hoge\nhoge")

クリックしたらテキストエリアの内容を書き変えたいんだけど、
書き換えたい文字列に改行コードが入ると unterminated string literal というエラーが出てうまくいかないお…

(´;ω;)どうすればいいのー

674:デフォルトの名無しさん
11/05/26 20:47:25.95
html()のほうかなー
試してないけど違ったらごめんね

675:デフォルトの名無しさん
11/05/26 21:19:33.05
>>674
(´;ω;)html()でも試した
Stringに改行コードが入ってるのがあかんらしい

676:デフォルトの名無しさん
11/05/26 22:21:38.06
$("#hoge").html("hoge<br />hoge") ならいくんじゃない?

677:デフォルトの名無しさん
11/05/26 23:40:50.91
1.2.6,1.5.2,1.6で試したがそんなのにはならんなー
ブラウザとjqueryのバージョンは何?あと再現できるコードを頼む

678:デフォルトの名無しさん
11/05/27 00:02:24.53
>>676
理由がわかりました

cgi から print "$(\"#hoge\").text(\"hoge\nhoge\")" で書き出してるわけだけど、
クライアントに返すソースが
$("#hoge").text("hoge
hoge")
になってた…

printする前に改行コードを\nから%0Aにリプレイスしてから、
javascript側のunescapeで改行コードに戻してやったらうまくいった

だがIEは失敗。なぜかラインフィードが半角スペースにデコードされとる
キャリッジリターンした時だけ何故かIEでもちゃんと改行される
IEしね

679:デフォルトの名無しさん
11/05/27 00:06:50.21
>>677
>>678 の通りです><
cgiからprintでjavascriptを書き出してるのが原因でした…
ちなみにjQueryは1.4.4つかってます

それにしてもIEは本当に問題児だ
だいっ嫌いこんな糞重くてバグだらけのブラウザ

680:デフォルトの名無しさん
11/05/27 00:24:31.14
%0Aより\\nとしてやる方がいいんじゃねーの?

681:デフォルトの名無しさん
11/05/27 01:04:32.17
\\n\\rじゃね?

682:デフォルトの名無しさん
11/05/27 01:26:48.08
|ω・`)おおうっ…そっちの方が美しいですね

>>680さんの通りにしたら、火狐、Chrome ではうまくいきましたが、
やはりIEでは改行されずに\nが半角スペースになってしまいました…

>>681さんはWindowsの改行コードですね
IEではうまく行きましたが、今度は火狐、Chrome が\rで改行、\nで改行と
認識してしまって二重改行になっちゃいました…
あれ?Windowsの改行コードって\\r\\nじゃなかった?と思いやり直したら
火狐、Chrome はうまくいって、IEは二行目以降の行の最初に半角スペースが入り失敗…

IE、火狐、Chrome できちんと改行されるのは\\rにした時だけでした
なぜだろうななんか気持ち悪い
IEがおかしいってのだけはわかる
あとは私の環境の問題かしら…

683:デフォルトの名無しさん
11/05/27 01:55:36.89
submitボタンが押されるとjqueryでtextareaを書き換えてからsubmitするようにしたのですが、
.clickで書き換え後val()をalertすると書き換わってるのですが、送信されるのは書き換わっていません。
どうするべきでしょうか?

684:デフォルトの名無しさん
11/05/27 03:10:17.39
textareaからフォーカスが離れたタイミングで書き換えておくか、データをAjaxで送信するか

685:デフォルトの名無しさん
11/05/27 16:32:25.17
|ω・`)>>682について勘違いをしてたので言及
ちゃんと調べてみたら、\\rでも\\nでも\\r\\nでもIEは改行されてなかった…

-------------------------------------------
<textarea id="hoge"></textarea>
-------------------------------------------
原因は$("#hoge").html(String)でStringに入ってるすべての改行コードがIEでは無視されてしまってた(.text()も同じ)
jQueryのhtml()がアカンのかと思い、document.getElementById("hoge").innerHTML(String)
で試したけど、やはりIEが改行コードを無視する

valueを書き変えたらどうかと試してみたら、
$("#hoge").attr("value", String) とすると改行がIEでもちゃんと反映された
他のブラウザもOK。

という事で解決しました
あどヴぁいす下さった皆さんどうも|ω・`ノシ

686:デフォルトの名無しさん
11/05/27 17:05:53.52
$("#hoge").val("foo\nbar\nbaz");

687:デフォルトの名無しさん
11/05/27 17:44:05.35
>>686
|ω・`)あぅ…無知ですた

688:654
11/05/30 08:06:22.13
>>658
>656のaaaaの部分だけ(やccccの部分だけ)をDOMにせずjQueryオブジェクトのまま取得したり書き換えたりしたいってことです
レスが遅れてすみません

689:デフォルトの名無しさん
11/05/30 16:48:44.24
うへ

690:デフォルトの名無しさん
11/05/30 17:01:57.42
>688
そういうときは変更の対象となる部分をspanの中に入れるから普通は困らないんだけど。
元々のHTMLは変更できないんだよね、きっと。


691:654
11/05/30 18:34:48.02
> 元々のHTMLは変更できないんだよね、きっと。
はい
HTMLは変更できません
つまりテキストノードと要素ノードが共存している場合のテキストノードはjQueryオブジェクトのまま取得・設定できないってことですか

692:デフォルトの名無しさん
11/05/31 13:03:23.96
<div id="aaa"><div id="bbb">test</div></div>

というHTMLに対して

$("#aaa").html()

で<div id="bbb">以下の要素のHTMLテキストが取れるけど
$("#aaa")から<div id="aaa">以下のHTMLテキストを直接取得する方法ってある?

親要素を作って$("#aaa")をappendして.html()で取得するって方法はできたけど
できれば直接取得したい。

693:デフォルトの名無しさん
11/05/31 13:24:13.76
>>692
Fx 対応してないけど outerHTML

694:デフォルトの名無しさん
11/05/31 17:58:05.46
>>693
サンクス
jQueryでブラウザ依存吸収してほしいね。


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch