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

    私的良スレ書庫

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

    元スレ+ JavaScript の質問用スレッド vol.114 +

    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
    501 : Name_Not - 2014/04/10(木) 20:37:38.19 ID:??? (+3,-29,-107)
    http://jsbin.com/vedemiyo/1/edit

    スクロールバーを持つ二つのdivがあり、
    左の要素には大きめのdiv,
    右の要素には長い文字列を入れています。
    どちらもクリックすると、eventのoffsetX/Yをコンソール出力します。
    スクロールさせてクリックした場合、
    左はスクロール値も考慮された、正しいオフセット座標が表示されます。
    しかし右は、スクロール値が考慮されていないようです。
    何故こうなるのでしょうか?
    コンテンツが文字列の場合でも正しいオフセットを得るにはどうしたらいいでしょうか
    502 : Name_Not - 2014/04/10(木) 21:22:03.59 ID:??? (+3,-30,-150)
    firefoxでは値すらなかったので調べたところ

    http://api.jquery.com/mousemove/

    Properties such as .clientX, .offsetX, and .pageX are available,
    but support for them differs between browsers.
    Fortunately, jQuery normalizes the .pageX and .pageY properties so that
    they can be used in all browsers.

    とありました
    pageX, pageYを使うべきで、他のプロパティは非推奨みたいですね
    ありがとうございました
    503 : Name_Not - 2014/04/10(木) 23:31:18.04 ID:??? (-1,-29,-20)
    clientX/Yが使えないブラウザなんてありますか?
    504 : Name_Not - 2014/04/11(金) 16:33:41.01 ID:??? (+13,-30,-126)
    通常、contenteditableな要素でmousedownをpreventDefaultすると
    フォーカスを防ぐことができます
    しかしIE7/8では、フォーカスしてしまいます
    ためしにclickやkeyupもpreventDefaultしてみましたが、やはりフォーカスしてしまいます
    どうすればフォーカスを止めることができるのでしょうか?
    505 : Name_Not - 2014/04/11(金) 23:14:59.18 ID:??? (-1,-29,-47)
    >>504
    最善の解決策は、IE7,IE8のサポートをやめるか
    IE7/8を稼働対象として求めてくるクライアントとの関係を断つことです。
    506 : Name_Not - 2014/04/11(金) 23:54:06.42 ID:??? (+57,+29,-11)
    質問は「IE7/8でどうすればフォーカスを止めることができるのでしょうか?」です。
    話をちゃんと聞きましょう。
    507 : Name_Not - 2014/04/12(土) 00:02:16.61 ID:??? (-1,-29,-22)
    やめたいのはやまやまですがまだシェアがあるので。
    evernoteもie7で閲覧できるようですし
    508 : Name_Not - 2014/04/12(土) 00:06:08.18 ID:??? (-1,-29,-38)
    うちの仮想環境のXPにはIE8が入ってるので
    いまだにIE7って何なの?とは思いますが・・
    XP以上ならIE8以上にできるだろが
    509 : Name_Not - 2014/04/12(土) 02:23:08.12 ID:??? (-1,-29,-27)
    イベントオブジェクトのcurrentTargetとtargetを混同して
    常にtargetを使っていました
    これは俺だけでしょうか?
    510 : Name_Not - 2014/04/12(土) 09:54:14.52 ID:??? (+57,+29,-16)
    はいそうです。ドキュメント読んでないのが悪いのです。
    511 : Name_Not - 2014/04/12(土) 10:22:16.79 ID:??? (+51,+28,+0)
    そうですか・・
    ありがとうございました
    512 : Name_Not - 2014/04/12(土) 10:49:17.89 ID:??? (+57,+29,-12)
    けっこうな間違いだと思うのに今まで正常に動いていたのが不思議だな
    513 : Name_Not - 2014/04/12(土) 13:34:49.14 ID:??? (+63,+29,-1)
    >>504
    ここをこうやってこうすれば止めることができる
    514 : Name_Not - 2014/04/12(土) 13:35:53.44 ID:??? (+56,+29,-3)
    分からないなら黙ってろよカス
    515 : Name_Not - 2014/04/12(土) 14:19:50.37 ID:??? (+41,+14,-2)
    カスっていうやつがカス
    516 : Name_Not - 2014/04/12(土) 15:13:26.32 ID:??? (+67,+29,-22)
    >>513
    本当ならもっと具体的にお願いします
    >>514
    汚い言葉はやめましょう
    >>515
    みんなとなかよくして下さい
    517 : Name_Not - 2014/04/13(日) 15:00:51.03 ID:??? (+4,-30,-82)
    ノードがドキュメントルートかを
    (node === document.body || node === document.documentElement)
    で調べています。
    ですが、ドキュメントルートへの追加は
    document.body.appendChild
    としています。
    これは違和感がありますが、問題なく動いているようです
    これでいいのでしょうか?
    518 : Name_Not - 2014/04/13(日) 15:30:16.81 ID:??? (+3,-29,-126)
    >>517
    意味がわからない。
    ドキュメントルートは document.documentElement であって document.body はドキュメントルートではないと思うが。

    それから「ドキュメントルートへの追加」の意味は?
    それがドキュメントルートに子要素を挿入するという意味なら document.documentElement.appendChild とすべきでは?だと思うが。

    > これは違和感がありますが、問題なく動いているようです
    違和感の内容をもっと具体的に。
    519 : Name_Not - 2014/04/13(日) 15:41:32.34 ID:??? (-1,-29,-40)
    document.firstChild はDOCTYPE宣言になるんだよね
    ドキュメントルートが要素に限定されるならhtml要素が正しいけど
    520 : Name_Not - 2014/04/13(日) 15:48:46.82 ID:??? (+4,-30,-72)
    そもそも、DOMにドキュメントルートという概念があるのかな?
    HTML文書のルートには DOCUMENT_TYPE_NODE と DOCUMENT_NODE と ELEMENT_NODE が存在できるわけで唯一のドキュメントルートはないような
    521 : Name_Not - 2014/04/13(日) 16:01:32.77 ID:??? (+3,-30,-38)
    ありがとうございます
    documentElementとbodyの関係が良く分かってなかったです
    bodyはdocumentElementの子で、
    document.bodyはdocumentElementのchildNodeとしてのbodyのエイリアスのようですね
    どっちもdocumentのプロパティなので混乱していました
    522 : Name_Not - 2014/04/13(日) 16:14:46.42 ID:??? (+3,-29,-73)
    >>520
    > そもそも、DOMにドキュメントルートという概念があるのかな?
    あえてあげるなら、DOCUMENT_NODE が Document Object Model におけるドキュメントルートだろう
    523 : Name_Not - 2014/04/13(日) 18:03:07.87 ID:??? (+3,-29,-32)
    イベントのオフセット座標って
    イベントを投げた要素(target)を基準とした座標なのか
    イベントハンドラで受け取った(currentTarget)を基準にした座標なのか
    分かりにくいよね
    だからfirefoxではオフセット座標を設定しないのかな?
    524 : Name_Not - 2014/04/13(日) 18:16:09.93 ID:??? (+57,+29,-8)
    仕様書読めばわかることをわかりにくいといわれてもなあ…
    525 : Name_Not - 2014/04/13(日) 18:23:55.18 ID:??? (+57,+29,-87)
    だって、ここにいるのはプログラマじゃないし。
    デザインの延長であんなかっこいい動きするデザイン作ってって
    クライアントに言われてjQueryプラグインぐぐるしか出来ないレベルですよ?
    526 : Name_Not - 2014/04/13(日) 18:53:29.99 ID:??? (+57,+29,-34)
    ここにいるのがプログラマじゃなくてWebデザイナなんて誰も決めてないけどね
    誰かさんはそうしたいみたいだけど
    527 : Name_Not - 2014/04/13(日) 18:57:21.55 ID:??? (+55,+29,-27)
    同意を求められているならわかりにくいとは思わない

    プログラマかWebデザイナかなんてどうでもいい
    レッテルを貼る人は差別意識が高すぎる
    528 : Name_Not - 2014/04/13(日) 18:58:23.53 ID:??? (+67,+29,-46)
    じゃあfirefoxがオフセット座標を設定しない理由を合理的に説明できるのかな?
    やたら煽ってる自称プログラマーさんには無理だろうけど。プゲラ。
    529 : Name_Not - 2014/04/13(日) 19:05:16.55 ID:??? (+66,+29,-1)
    >>528
    煽った時点で君も同レベルだよ
    530 : Name_Not - 2014/04/13(日) 19:07:40.42 ID:??? (-2,-30,-24)
    new Date(2014, 4, 8)
    Thu May 08 2014 00:00:00 GMT+0900

    わろたw
    531 : Name_Not - 2014/04/13(日) 19:09:54.40 ID:??? (+0,-28,-30)
    他の座標を使って計算可能なんだからjQueryが何とかすべきだな>offset
    532 : Name_Not - 2014/04/13(日) 19:13:35.20 ID:??? (+62,+29,-76)
    イベントのオフセット座標が何を示しているのかわからないのは俺だけか
    イベント関連オブジェクトにoffsetの名のつくプロパティが見つからないのだが
    http://www.w3.org/TR/DOM-Level-3-Events/

    前からこういう質問はあるが、正式名称で書いてくれないものかね…
    533 : Name_Not - 2014/04/13(日) 19:28:49.14 ID:??? (+1,-30,-144)
    オフセット座標としては HTMLElement#offsetLeft があるが、イベントは関係ないな
    http://www.w3.org/TR/cssom-view/#extensions-to-the-htmlelement-interface
    event.offsetX はIE独自拡張だったはずだが、これのことか?
    http://msdn.microsoft.com/en-us/library/ie/ms534305.aspx

    いずれにしても仕様通りに動かなければバグだし、仕様通りなら仕様としか言いようがない
    Firefoxのみ再現するならMDNの仕様をあたるべきだろう
    「わかりにくい」とか主観的な事はどうでもいいので仕様を確認する癖をつけたほうがいい
    534 : Name_Not - 2014/04/13(日) 21:40:27.92 ID:??? (+3,-28,-19)
    独自拡張?chromeにもあるが?
    535 : Name_Not - 2014/04/13(日) 21:52:10.07 ID:??? (+58,+29,-16)
    >>534
    確かにあるようだが、標準仕様にある?
    標準がないなら仕様が各々違っても仕方ない
    536 : Name_Not - 2014/04/13(日) 22:07:32.03 ID:??? (+6,-29,-43)
    MouseEventじゃないEventにoffsetXがあるブラウザがあるってこと?
    537 : Name_Not - 2014/04/13(日) 22:22:05.35 ID:??? (+13,-30,-67)
    2つのjsファイルがあり、それぞれで
    $(function(){});
    の範囲にある関数群を、同じ名前空間内に
    マージ?する方法ってありますか?

    複数のファイルに分割して開発されたライブラリを
    1つのHTML内で取り込んで、それぞれの名前空間を
    意識すること無く使いたい、という意図なのですが。。
    538 : Name_Not - 2014/04/13(日) 22:23:14.37 ID:??? (+57,+28,-10)
    >>536
    何を言いたいのかわからない
    539 : Name_Not - 2014/04/13(日) 22:39:42.56 ID:??? (+57,+29,-31)
    標準になければ独自格調で間違ってない
    よって、各々が足並みを揃える必要もなければ保証もない
    540 : Name_Not - 2014/04/13(日) 22:42:07.58 ID:??? (+8,-30,-66)
    MouseEvent#offsetXは標準仕様にあるけど、Event#offsetXは独自拡張って話だよね
    541 : Name_Not - 2014/04/13(日) 22:51:24.87 ID:??? (-1,-30,-92)
    >>540
    MouseEvent#offsetX が DOM L3 Events で見つからないのだが、どこに書かれているのだろうか
    http://www.w3.org/TR/DOM-Level-3-Events/#h4_events-mouseevents
    542 : Name_Not - 2014/04/13(日) 22:55:48.13 ID:??? (+59,+29,-2)
    >>540
    いや、そんな話は誰もしてない
    543 : Name_Not - 2014/04/13(日) 22:57:27.89 ID:??? (+0,-29,-20)
    >>541
    >>533のCSSOM View Moduleにある
    テンプレ>>5にも日本語訳へのリンクがある
    544 : Name_Not - 2014/04/13(日) 23:27:43.15 ID:??? (+59,+29,-35)
    http://jsdo.it/Pontyasan/jrIY

    ギャル文字に変換するモノを作っていたのだが、うまく動かん。
    誰か助けて下さい
    545 : Name_Not - 2014/04/13(日) 23:33:30.93 ID:??? (-2,-29,-46)
    >>543
    ありがとう
    CSSOM View Module に DOM Events が定義されているとは思わなかった
    547 : Name_Not - 2014/04/13(日) 23:40:54.11 ID:??? (+22,-30,-46)
    >>544
    > result = s.replace(new RegExp(origin[i],'g'),gal[i]);
    result には一番最後に replace した結果が格納される
    548 : Name_Not - 2014/04/14(月) 00:12:36.89 ID:??? (+0,-30,-41)
    document.getElementBy?Id
    より
    document.body.getElementById
    の方が対象を絞りこんだ分速いですか?
    549 : Name_Not - 2014/04/14(月) 00:18:03.36 ID:??? (+59,+29,-5)
    >>547
    あー...なるほど...
    どうしたらいいんでしょうか。設計からやり直すべきですかね
    550 : Name_Not - 2014/04/14(月) 00:33:04.50 ID:??? (+52,+21,+0)
    >>547
    自己解決しました。
    アドバイスありがとうございました
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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