元スレ+ JavaScript の質問用スレッド vol.131 +
JavaScript覧 / PC版 /みんなの評価 :
501 = :
今話をしてるのはJavaScriptの変数の話だ
分かってないなら黙ってろ
502 = :
HTML内で
var userData = {}
外部JSファイル内で
(function(){
something(userData.何か);
})();
こういうことだろ
503 = :
>>500
常に何から何までXHRで済ませられるわけじゃないしな
506 = :
thisの問題ですね。
now()で呼び出したときもthisがperformanceを指すように以下のようにbindしときましょう。
window.now = performance.now.bind(performance);
507 = :
とりあえずthisを拘束すればいいという考えはあまり良いとは思えないな
エイリアスという点では今は
fn = ( ...args ) => performance.now( ...args )
と書く方が良い
bind構文が実装されて記述が容易になるとともに
bindを常日頃から使う文化が広がったらbind構文の方が基本になると思う
508 = :
より「ハック」っぽくないのはどちらかっていう意味ね
509 = :
ハックっぽいかなぁ?
>>506はbindした新しい関数返してるだけで別になんにもハックしてなくない?
bindなんてES5から入ってるし実装されてるかどうか気にするレベルにないのでは…
510 = :
Google Maps (Javascript) API に関することはここでいい?
他に適当な質問スレがあれば教えてください。
511 = :
>>510
Google Maps API 質問箱
http://mevius.5ch.net/test/read.cgi/tech/1131627583/
512 = :
>>477
Windows8.1はダメなので、IE自体の問題のような感じです。
開発者ツールでみると
else { //* not MSIE browser
wid1.location.href=wz1;
}
で止まっているのですが、Windows7では不具合なく動いているので、どこがおかしいかわからないのです。
513 :
フォーム内のあるアイテムの入力文字数が
たとえば 5文字あるいは10文字あるいは空白の場合だけ入力できるようにするにはどうすればよい?
514 = :
地道に数えろよ
515 = :
サロゲートペアと結合文字の問題があるからな
サロゲートペアで結合文字のものもある
例えばアクセント付付点8分音符「"𝅘𝅥𝅮𝅻𝅭"」は一文字でlengthは10だ
516 = :
>>495
ありがとうございました。
無事にこちらの方法で変数名を変えずに圧縮することができました。
517 = :
>>511
ありがとう。しかしそっちはちと寂しかったです。
518 = :
基本的なことだと思うんだけど、分かってないので
click event についてなのですが
event発生のタイミングって、カーソルのpushが対象から抜けた時ですよね
表現がヘンで伝わってるか不安だけど
ブラウザゲームっぽいの作ってまして
touchしたときにevent発生させることってできるんでしょうか?
519 = :
タッチならタッチ専用のイベントが有る
タッチ専用のイベントは有るがマウスにも対応しようとしたら
いろいろ面倒なので、統合的に使えるライブラリを探したほうが良いかもね
俺の知識は古いので何が最善かまで言えない
520 = :
mousedown
521 = :
>>519
ありがとう!
できないものと思い込んでた
http://developer.mozilla.org/ja/docs/Web/Guide/DOM/Events/Touch_events
これ見て吃驚
523 = :
タッチは300ms問題とかもあったはず。ライブラリ使うべき。
525 = :
>>520
えっ!あっそか
と思ってやってみました (jqueryでね)
$('#hoge').on('click', function () {
console.log('ムフフ');
});
を
$('#hoge').on('mousedown', function () {
desktop版firefox お〜動くー!
iOS safari あれ?挙動が click と同じだなぁ
528 = :
皆様ありがとう!
スマホはmouseじゃないからなのか
ぐぐってやってみて、ちゃんと動くようになったのが
var clickEventType = ((window.ontouchstart!==null) ? 'mousedown':'touchstart');
$('.slotBtn').on(clickEventType, function () {
socket.emit($(this).attr('id'));
});
// thankYou!!!
529 = :
タッチパネルつきパソコンはどうなるのか?って考えると
両方onしたほうがいいのかもしれないけどな
イベント2つ扱うときはこういう書き方な
$('.slotBtn').on("mousedown touchstart", function () {
socket.emit($(this).attr('id'));
});
あとどうでもいいけど、イベントハンドラ内のthisみたいに
必ず要素が一個であると断定できる時は、this.id と最近は書いてる
530 = :
内部でvarしない関数定義もしない即時関数って、即時関数にする意味なんかある?
531 = :
>>529
2回呼ばれることは絶対ないのけ?
532 = :
>>529
mousedown と touchstart 併記したら
safariのやつが2つとも反応しちゃうんですよ
this.id の件了解!きっとこの方が速いんですよね
533 = :
>>530
$('.slotBtn').on(clickEventType, socket.emit(this.id));
ってことですね
習慣でいたるところに…
535 = :
>>533
それダメwww
536 = :
>>533
それ動くの?
>>530で言ってるのは例えばこんな感じの記述
(function(){
document.getElementsByClassName('slotBtn')[0].addEventListener('mousedown', function(){
call.some.function();
}, false);
})();
537 = :
>>535
なんんでぇー
538 = :
>>537
関数そのものを渡さなきゃいけない
function(){}を渡すのはいいが、
socket.emit(this.id)ではsocket.emit(this.id)を実行した結果が渡される
って感じか?
539 = :
>>536
やってないんで、やらんで良かった
コードさんきゅです、理解できた
540 = :
>>537
それだとその行にきた段階でリスナー登録じゃなく socket.emit() が実行される
もとのやつでいい
542 = :
そのうえ
画面のスクロールとかスクロールバー付き要素のスクロールとか
2本以上の指のタッチとか
アホかってほどいっぱい面倒なもんが出てくるからな
544 = :
ただ単にタッチを検出したいだけなら
touchstartとかでいいが
タッチを利用したカルーセルのような
インターフェースを作りたいのなら
自作するより使ったほうが楽
理由は>>542が書いているとおり
545 = :
>>518
自分も作るけど使い分けなくて便利だからPointer Events使ってる
来年にはFxとSafariでも使えそうな雰囲気だし
今はChromeとEdgeだけでもいいでしょ
546 = :
>>544
カルーセル作りたいなら、の意味がわからん
547 = :
touch, mouse を透過的に扱うのは、
Electron, Cordova, React などのフレームワーク
>>536
ECMA5 では、ブロックスコープが無かったから、
関数でスコープを作る
548 = :
>>547
やっぱ魔境じゃん
http://mk.hatenablog.com/entry/2017/08/27/003515
549 = :
バッドノウハウの温床というやつだな
550 = :
>>547
内部でvarしない関数定義もしない場合、スコープ作る必要ある?
類似してるかもしれないスレッド
- + JavaScript の質問用スレッド vol.131 + (1000) - [100%] - 2017/1/25 8:01
- + JavaScript の質問用スレッド vol.141 + (881) - [97%] - 2021/4/19 9:00
- + JavaScript の質問用スレッド vol.135 + (1002) - [97%] - 2018/11/23 10:30
- + JavaScript の質問用スレッド vol.121 + (1001) - [97%] - 2015/1/1 18:30
- + JavaScript の質問用スレッド vol.121 + (1001) - [97%] - 2022/11/29 16:30
- + JavaScript の質問用スレッド vol.130 + (974) - [97%] - 2016/10/26 14:18
- + JavaScript の質問用スレッド vol.111 + (1001) - [97%] - 2013/11/4 6:00
- + JavaScript の質問用スレッド vol.132 + (1001) - [97%] - 2018/4/19 11:00
- + JavaScript の質問用スレッド vol.133 + (1001) - [97%] - 2018/6/8 10:45
- + JavaScript の質問用スレッド vol.134 + (1001) - [97%] - 2018/8/3 23:15
- + JavaScript の質問用スレッド vol.130 + (1001) - [97%] - 2017/11/25 20:45
- + JavaScript の質問用スレッド vol.136 + (1001) - [97%] - 2019/1/8 11:30
- + JavaScript の質問用スレッド vol.138 + (1004) - [97%] - 2019/4/20 23:45
- + JavaScript の質問用スレッド vol.139 + (1001) - [97%] - 2019/5/27 15:15
- + JavaScript の質問用スレッド vol.101 + (1001) - [97%] - 2012/7/16 14:15
- + JavaScript の質問用スレッド vol.141 + (1001) - [97%] - 2019/9/22 23:15
- + JavaScript の質問用スレッド vol.137 + (1003) - [97%] - 2019/3/26 11:46
トップメニューへ / →のくす牧場書庫について