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

    私的良スレ書庫

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

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

    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
    851 : Name_Not - 2014/05/23(金) 19:05:31.34 ID:??? (+63,+29,-30)
    >845以降のレスが消えてるね
    新スレも一部消えていたけど、板移転の影響かな
    852 : Name_Not - 2014/05/23(金) 19:11:35.50 ID:??? (+62,+29,-7)
    >874までならログを保存してあるけど、それ以上はわからない
    http://codepad.org/boBOpl2e
    853 : Name_Not - 2014/05/23(金) 19:24:01.09 ID:??? (-2,-30,-38)
    Web制作板全体で5/23 0:00~14:00(最低14:00、あるいは15:00)のログがなくなってるね。
    移転するならメンテ中にして書き込みをロックすればよかったのに
    854 : Name_Not - 2014/05/23(金) 19:37:35.63 ID:??? (+57,+29,-18)
    まぁログ速でもscでもどこでも見れるさ
    855 : Name_Not - 2014/05/24(土) 00:18:48.46 ID:??? (+59,+26,-10)
    >>846
    この機能ですが、ほとんどのアプリがそうなるので
    windows自体の機能かもしれません
    856 : Name_Not - 2014/05/24(土) 00:58:42.52 ID:??? (+62,+14,-98)
    質問です

    システムが勝手に吐き出すhtml 「A」がありますがこれにcssとjavascriptで装飾と動きを与えたいと思っています


    そこで「B」のhtmlファイルに、このシステムが吐き出すファイル「A」から.loadで読み込んだhtmlを
    表示させたところ、「B」のヘッダに記述したcssを適用させることができました

    が、「B」のファイルに記述したjavascriptが動きません。

    .loadで読み込んだhtmlに対してjavascriptで効果を与えることは出来ないのでしょうか?
    もし出来るのであればどのような方法がありますか?
    857 : Name_Not - 2014/05/24(土) 01:01:38.36 ID:??? (+32,-29,-32)
    firefoxでも選択されますね
    preventDefaultしているのに選択されるのが奇妙ですが・・
    858 : Name_Not - 2014/05/24(土) 01:07:16.07 ID:??? (+96,+29,-29)
    ぶっちゃけ疑問に思っている方が不思議だわw

    >>857
    パソコン歴とか年とかどれくらい何?
    普段何やってる人?
    859 : Name_Not - 2014/05/24(土) 01:24:00.18 ID:??? (+104,+29,-2)
    >>858
    しょうもない煽りですね
    あなたよりは経験あると思いますよ
    860 : Name_Not - 2014/05/24(土) 01:25:14.15 ID:??? (+57,+29,-38)
    デフォルト動作を無効にしているのに選択される合理的な理由を
    万が一言えるのなら言ってみてくださいね
    861 : Name_Not - 2014/05/24(土) 01:28:49.79 ID:??? (+3,-29,-76)
    ちなみにcssでuser-select: none;を指定すれば選択されないようにできるという目処は立ちました
    ですが、やはりpreventDefaultしているのに文字列選択されるのはクソだと思うし、許しません
    862 : Name_Not - 2014/05/24(土) 01:43:31.16 ID:??? (-1,-29,-21)
    mousedownをpreventすれば選択されないと判明しましたので許します
    863 : Name_Not - 2014/05/24(土) 04:07:19.91 ID:??? (+28,-7,-12)
    >>856
    読み込む順序は?
    ちゃんと、Aを読み込んだ後に、JSを実行している?
    864 : Name_Not - 2014/05/24(土) 08:47:38.07 ID:??? (+57,+29,-7)
    コピペを防ぎたいのか知らんがソースを表示すれば簡単にコピペは可能
    865 : Name_Not - 2014/05/24(土) 09:56:00.67 ID:??? (+72,+29,-46)
    >>840
    > これがchromeで想定していないところで発動して困っています
    発動条件が書いてないので答えようがない、が正直な答え
    そもそも、Googleに報告はしてるんだろうね
    866 : Name_Not - 2014/05/24(土) 12:07:06.79 ID:??? (+57,+29,-10)
    コピペを防ぎたいのではなく、アプリを操作中に選択状態になるのが困るということです
    867 : Name_Not - 2014/05/24(土) 12:13:01.52 ID:??? (+62,+29,-86)
    マウスカーソルを動かさないまま変更する汎用的な方法はありますか?
    自分が見つけたのはカーソル直下の透明要素のcursorを変更し、
    数百ms待ってから透明要素を消すことで出来るのですが
    ディレイを入れず変更直後に透明要素を消すと変わりません(chrome)
    このディレイの値が環境依存っぽくて気になります
    ディレイを入れずに変更できる方法はないでしょうか?
    868 : Name_Not - 2014/05/24(土) 13:02:36.05 ID:??? (-1,-29,-2)
    リフローを発生させたらすぐに反映させることができましたo(^▽^)o
    869 : Name_Not - 2014/05/24(土) 23:15:53.83 ID:??? (+25,-29,-48)
    localstorageのsetItemの第一引数に変数は使えますか?
    870 : Name_Not - 2014/05/24(土) 23:54:54.57 ID:??? (+49,+17,+0)
    >>869
    試してみればいいじゃん。
    871 : Name_Not - 2014/05/25(日) 00:58:28.66 ID:??? (+2,-29,-17)
    localstorageで使える残り容量ってどうやれば知れますか?
    872 : Name_Not - 2014/05/25(日) 03:30:07.30 ID:??? (+32,-29,-34)
    >>871
    残りの利用可能容量は Quota Management API を使ってプログラム上で取得することができます。
    873 : Name_Not - 2014/05/25(日) 04:59:11.79 ID:??? (-1,-29,-20)
    最新chromeでwindow.webkitNotificationsが使えなくなってるね
    くそが
    874 : Name_Not - 2014/05/25(日) 05:14:31.10 ID:??? (+31,-29,-3)
    http://developer.chrome.com/extensions/notifications
    Internal server error

    サーバもろくに管理できねーのか
    875 : Name_Not - 2014/05/25(日) 05:34:41.69 ID:??? (-28,-30,-140)
    http://jsbin.com/gucikube/1/edit
    notificationsのテストをしようとしてもエラーになるので
    console.log(chrome.notifications);
    とやったところundefinedと言われます
    オブジェクト自体がないなら動くわけありません
    chrome.notificationsはchrome28から使えるようになったようですが、
    また使えなくなったのでしょうか?
    876 : Name_Not - 2014/05/25(日) 09:50:54.90 ID:??? (+71,+29,+0)
    >>859
    と言うことは、ただのアホか
    877 : Name_Not - 2014/05/25(日) 16:15:46.95 ID:??? (+3,-30,-177)
    キー入力の状態を明示的に「bodyをクリックした時と同じような状態」にするにはどうしたらいいでしょうか?
    chromeで、contenteditableな領域でIMEオンのまま他のbuttonをクリックすると、
    フォーカスは外れるのですが、そのままキー入力をすると、
    contenteditable領域にキー入力が送られてしまいます
    buttonではなくbodyなどをクリックすることでblurした場合は、そのようなことはありません
    バグだと思いますが、buttonクリックでは「半blur」のような状態になるのです
    なので完全にblurしたいのですが、スクリプトにより要素でblurを発行しても、完全blurにはなりません
    完ブラするにはどうしたらいいでしょうか
    878 : Name_Not - 2014/05/25(日) 16:26:24.74 ID:??? (+3,-29,-24)
    はっと思いつき、
    input textにフォーカスを移し、すぐにblurする、
    というウルテクで完ブラすることが出来ました\(^o^)/
    contenteditableという十分に枯れてないコンポーネントでのみ起きる現象だったので。
    879 : Name_Not - 2014/05/26(月) 04:10:53.13 ID:??? (+62,+29,-2)
    >>872
    そういうものがあったのですね
    調べてみます
    ありがとうございました
    881 : Name_Not - 2014/05/26(月) 12:47:07.25 ID:??? (+57,+29,-34)
    > わすれちゃいけないのが関数定義はブロックスコープだということ
    それがどうかしたの?
    882 : Name_Not - 2014/05/26(月) 13:16:42.37 ID:??? (+11,-11,-15)
    変数もブロックスコープじゃん
    883 : Name_Not - 2014/05/26(月) 14:10:23.44 ID:??? (+53,+0,-48)
    いや、全て関数スコープだと思うが…
    ブロックスコープはES6になるまで存在しない
    884 : Name_Not - 2014/05/26(月) 14:16:23.31 ID:??? (+35,+17,-1)
    だよな
    885 : Name_Not - 2014/05/26(月) 15:46:05.85 ID:??? (-2,-30,-47)
    テキストをスマホでタップした時に選択状態にしたいんですが、

    <input type="text" ontouchstart="this.select();">


    ↑このように書いても選択されません。
    何かアドバイスくださいお願いします。
    886 : Name_Not - 2014/05/26(月) 16:57:15.21 ID:??? (-1,-29,-16)
    ontouchstart を click にする。
    887 : Name_Not - 2014/05/26(月) 18:28:44.95 ID:??? (+62,-30,-233)
    >>883
    ブロック中の関数宣言はES5までは仕様外でブラウザの独自実装
    ブロックスコープか関数スコープかはブラウザによる
    例えばChromeはブロックスコープ、Firefoxは関数スコープ
    ただしES6ではブロックスコープになったのでこれからはそれに統一される
    またそれに先立ってES5のstrict modeでは明示的に禁止されてる
    あとES5まででもtry-catch(e)のcatch節中のeはブロックスコープになる

    function test() {
    var F = function () { return 'OK' }
    if (true) { function F() { return 'NG' } }
    return F
    }

    test()()
    888 : Name_Not - 2014/05/26(月) 19:36:43.17 ID:??? (+68,+29,-172)
    >>887
    ブラウザの独自拡張を当然の動作であるかのように「関数定義はブロックスコープ」や「変数もブロックスコープ」と主張するのは違うと思ったのでES5仕様に則り、「全て関数スコープ」とした
    「ES5では」と書かなかったのは反省してる

    ところで、「ES6ではブロックスコープになった」のは知らなかった
    まともな実装ならブロック内で関数宣言しないと思うが、コードによっては大きな影響がありそうだな
    889 : Name_Not - 2014/05/26(月) 19:45:04.77 ID:??? (+14,-30,-94)
    >>887
    だからなんなんだよ?

    ブロックスコープで関数宣言するってはない誰もしてないだろ。

    関数スコープで関数宣言するのなら、
    動的なものでもない限り、静的に関数宣言、つまり
    var func = function () {・・・} よりも
    function func() {・・・} の方がふさわしいって話を
    みんなしてるんだが。

    function文とfunction式の違い、式である必要がないなら
    function文を使いましょう。
    890 : Name_Not - 2014/05/26(月) 19:47:42.40 ID:??? (+3,-30,-50)
    ん? まさか { }でくくられたものは全て
    ブロックコープだって思ってないか?


    function foo() {
     function bar() {・・・} // ← ここはブロックスコープではない。

     if (・・・) {
      // こことかがブロックスコープ
     }
    }
    891 : Name_Not - 2014/05/26(月) 19:56:45.54 ID:??? (+143,+30,+0)
    うーん、なんか主張が噛み合ってないね。関数スコープってのは逆に言えばブロック中に書いても滲み出るものであって、
    そもそもブロック中に置けないのなら関数だってブロックなんだから、むしろブロックスコープだという方が一般的な言葉の印象として正しいと思うけどな。

    まあそれはブロックスコープより関数スコープが「基本」だと思ってるからだろう。そこが咬み合わない原因かもしれない。
    ブロックスコープが「基本」で関数スコープが第二の面白いスコープだと思えば、関数直下にしかない状況でわざわざ関数スコープを優先的に先に考えるのは変だと気付く

    ES6からはブロックスコープだがES5までは関数スコープだったとわざわざ言うとまるでブロック文中に書いたときの挙動が変わったように思える。
    だが実際の実装ではまさにそうなってるんだから、むしろ関数スコープだったと言えるのは、ES5というより実際の実装の方ではないだろうか?
    892 : 883,888 - 2014/05/26(月) 20:00:04.53 ID:AQkGHY9b (-13,+29,-4)
    何を怒っているのかわからんが、俺は参考になったので>>887には感謝してる
    893 : Name_Not - 2014/05/26(月) 20:01:48.87 ID:??? (+57,+29,-19)
    ここは質問者の答えは出るけど
    その後よくわからんJavascript勉強会が始まる
    895 : Name_Not - 2014/05/26(月) 20:14:18.98 ID:??? (+64,+29,-70)
    >>891
    お前が馬鹿なだけじゃね?

    そもそも関数スコープとブロックスコープの違いを知らなかっただろ?
    それを無理やり「俺は知ってた」みたいにこじつけるのやめとけよ。
    896 : Name_Not - 2014/05/26(月) 20:21:37.09 ID:??? (+12,-30,-24)
    897 : Name_Not - 2014/05/26(月) 20:24:21.76 ID:??? (+77,+29,-226)
    >>891
    お前何いってんの? ECMAScriptの仕様調べないで、自分の定義から
    仕様を推測するとかアホなことやってんの? お前の印象なんかどうでもよくて、
    ブロックスコープと関数スコープのどちらが基本とか関係なくて、

    単に仕様では「ES5までは関数スコープしか存在しなかった」という事実でしか無いだろ。
    実装がどうとかそんなの関係なく関数スコープしかなかったの。それがECMASCriptの一般的な言葉。

    で関数定義はブロックスコープで行った場合の挙動は実装依存だが、
    関数スコープで行った場合の挙動は明確で使用することに何の問題もない。
    898 : Name_Not - 2014/05/26(月) 20:28:44.42 ID:??? (+1,+12,-235)
    ES5において、スコープは
    グローバルスコープ と 関数スコープしか無い。
    関数の中にあるものは関数スコープで、そうでないものはグローバルスコープ

    ES6では新たにブロックスコープができた。
    ブロックスコープとは関数スコープの中でブロックを作った時に出来るスコープで、
    そのスコープ内でのみ存在する変数はletを使って定義する。
    letを使わない限り変数は関数スコープとなり、ブロックスコープはオプションと考えられる。
    899 : Name_Not - 2014/05/26(月) 20:33:03.85 ID:??? (+67,+29,-92)
    >>898
    >ブロックスコープとは関数スコープの中でブロックを作った時に出来るスコープ

    グローバルスコープの中では、ブロックスコープはできないってこと?
    900 : Name_Not - 2014/05/26(月) 20:33:15.39 ID:??? (+62,+29,-136)
    ES6でスコープのデフォルトがブロックスコープに変わったとか
    そういうことが起きたわけじゃない。

    従来通りのコードを書けばES5のとおり関数スコープ(関数の中でなければグローバルスコープ)
    それが互換性というものなのだから当然。

    そこに新たにブロックスコープという概念が追加された。だがそれは追加機能であり
    letを使わないとそのスコープは利用されない。
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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