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

私的良スレ書庫

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

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

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
751 : Name_Not - 2013/01/02(水) 17:21:10.67 ID:??? (+26,+5,-1)
>>750
古いブラウザを使って試しているんじゃないかね
752 : Name_Not - 2013/01/02(水) 19:12:00.80 ID:??? (-3,-30,-94)
>>750
その記法は現状Firefox 15以降のみ対応。

default parameters - JavaScript | MDN
http://developer.mozilla.org/en-US/docs/JavaScript/Reference/default_parameters

似たようなことをしたいんだったら、
testFunc = function(hoge){
alert(hoge || 123);
}
とか。
753 : Name_Not - 2013/01/02(水) 20:11:30.46 ID:??? (-1,-29,-30)
752がベストだろうけど、パズル的な答えだとarguments.lengthを使ったりとか。
754 : Name_Not - 2013/01/02(水) 22:27:18.78 ID:??? (+3,-29,-37)
http://www.enjoyxstudy.com/javascript/suggest/demo/demo1.html
このサイトのように、input textの下にdisplayに文字を入れて並べて表示するのはどのような処理をしているのでしょうか
こちらがjavascriptのソースになります
http://www.enjoyxstudy.com/javascript/suggest/suggest.js
よろしくおねがいします
755 : Name_Not - 2013/01/03(木) 02:37:17.23 ID:??? (+2,-30,-25)
letはChromeでは使ってはいけないんでしょうか?
for (let i = 0; でエラーになります
756 : Name_Not - 2013/01/03(木) 02:44:10.82 ID:??? (+9,-30,+0)
<img id="myimage" src="images/001.jpg" alt="my image" />
var myimage = document.getElementById("myimage");
if (myimage.addEventListener) {
// IE9, Chrome, Safari, Opera
myimage.addEventListener("mousewheel", MouseWheelHandler, false);
// Firefox
myimage.addEventListener("DOMMouseScroll", MouseWheelHandler, false);}
// IE 6/7/8
else{ myimage.attachEvent("onmousewheel", MouseWheelHandler);}
function MouseWheelHandler(e) {
// cross-browser wheel delta
e = window.event || e; // old IE support
var delta = Math.max(-1, Math.min(1, (e.wheelDelta || -e.detail)));
var t=myimage.width + (30 * delta);
var x=Math.max(50, Math.min(1200, t));
myimage.style.width = x+ "px";
var y=myimage.height;
//we return false to cancel the standard event which would normally scroll the page.
return false;}
英語のサイトに載ってたマウスホイールでの画像の拡大と縮小
なのですが、画像拡大時にデフォルトのマウスホイールでの動作
(ブラウザスクロール)は無効になるのですが、
画像縮小ではブラウザスクロールもしながら画像縮小してしまします
return false;でデフォルトのブラウザの動作を無効にしているのでは
ないのですか?何故ですか?
757 : Name_Not - 2013/01/03(木) 06:46:39.13 ID:??? (+23,-30,-187)
>>756
デフォルト動作を無効にするのはevent.preventDefault() (ただしIEのattachEventだとエラー)
return false でデフォルト動作が無効になるのはイベントプロパティ・イベント属性・IEのattachEventのみ
IEは event.returnValue = false でもよい

あとイベントハンドラに渡される引数を優先して e = e || window.event にした方がいい
758 : Name_Not - 2013/01/03(木) 10:32:29.46 ID:??? (-1,-29,-45)
>>755
Google ChromeはECMAScript6の構文を実装していない
759 : Name_Not - 2013/01/03(木) 12:14:06.66 ID:??? (+31,+5,+1)
>>757
ありがとうございました
760 : Name_Not - 2013/01/05(土) 11:57:40.60 ID:??? (+6,-30,-35)
for (i = 0; ...) {
if (i == 4 || i == 8 || ....) {

}
}
4回ごとに if で判定したいのですが簡潔に書くことってできますか?
761 : Name_Not - 2013/01/05(土) 12:40:04.69 ID:??? (+2,-29,-8)
>>760
for(i=0;...){
if(!i%4){
...
}
}
762 : Name_Not - 2013/01/05(土) 12:42:55.08 ID:??? (-1,-29,-5)
>>760-761
本当にthen側しかないのなら
for(i = 0; ...; i += 4)
がいいんじゃないでしょうか。
763 : Name_Not - 2013/01/05(土) 12:55:18.66 ID:??? (-1,-29,-2)
>>761-762
ありがとうございます。<br>を入れたかったのです。
数学に弱いとダメですね> <
764 : Name_Not - 2013/01/05(土) 13:01:56.65 ID:??? (-2,-30,-13)
if (!(i % 4)) ですね。var i = 0 なら if (!((i + 1) % 4)) でした
765 : Name_Not - 2013/01/05(土) 17:20:34.75 ID:??? (-1,-29,-11)
アプリ起業 iPhoneC#まとめ Ver 1.5
http://tinyurl. com/9w97424
766 : Name_Not - 2013/01/05(土) 21:15:59.28 ID:??? (+3,-30,-163)
greasemonkeyスクリプトで、2ch型の掲示板に機能を追加するスクリプトを書きたく、その一環としてIDをポイントすると同じIDの
書き込みをツールチップで表示するようにしたいのですが、以下を満たすようなツールチップが作れません。
・マウスポインタが"ID"という文字の上、あるいはツールチップ上にあるときはツールチップを表示したままにし、それ以外にあるときは消す。
・ツールチップ内にHTMLを使いたい。
"ID"という文字とツールチップをまとめて扱いたいのでまとめて同じタグに入れてそれにイベントハンドラを設定すればいいのかなと思ったのですが、
それをインライン要素にするとツールチップにブロック要素を入れられず、ブロック要素にすると"ID"が一行になってしまいます。
どうやれば良いのか教えてください。(windows 7 professional/ firefox 17.0.1/ jQuery1.8.3)
767 : Name_Not - 2013/01/05(土) 21:22:48.62 ID:??? (+31,-29,-20)
display: inline-block とか?
768 : Name_Not - 2013/01/05(土) 22:03:47.21 ID:??? (+62,+29,-1)
>>767
それでうまくいくっぽいです。ありがとうございました。
769 : Name_Not - 2013/01/06(日) 09:41:18.90 ID:??? (+71,-28,-8)
JavaScriptって、関数呼び出しをする時は全部apply使う方がよくないですか?
770 : Name_Not - 2013/01/06(日) 11:07:02.17 ID:??? (-7,+2,-16)
なんで?
thisがわかりづらい?
772 : 771 - 2013/01/06(日) 12:00:40.42 ID:??? (+46,+23,+0)
sage忘れました。ごめんなさい
773 : Name_Not - 2013/01/06(日) 12:22:44.26 ID:??? (+10,+29,-108)
>>771
クラスディレクティブ的な書き方がなく、関数スコープだけでやるから
結果的にthisがグローバルの参照になることがあるので
混乱することがあるかもしれない

けどそれは慣れの問題だと思うんだけどなあ

例えば自分が昔書いた、関数の中に関数を書いてプライベートクラス!と言い張る糞コードがあるんだが
そんなうんこを今読み直しても、thisで混乱することはないのですよ

うん、やっぱ慣れですな
774 : Name_Not - 2013/01/06(日) 12:49:19.76 ID:??? (+60,+29,-46)
>>773
う~ん、慣れですか。(分からない用語があって何となくですが)分かりました
変数を関数の外側に探しに行くんでしたっけ。

例えば他のOOPな言語の後にJavaScriptを始める人には
apply,...を使ったやり方から始めた方が良いのかも?と思います。

ちなみにその糞コードみたいなの、この前書きました…w
775 : Name_Not - 2013/01/06(日) 12:59:35.43 ID:??? (+91,+29,-14)
自分のコードなら慣れで良いけど
他人のコード読むときにいちいち慣れるのはたいへんじゃね?
776 : Name_Not - 2013/01/06(日) 13:16:09.27 ID:??? (+68,+29,-33)
>>775
そうですね。まあJavaScriptに限らない話になりそうですけど
今後他人に教える/他人と共同作業する立場になるので、その上で>>769を書いたしだいです。
なかなか難しいなあ~
777 : Name_Not - 2013/01/06(日) 13:31:55.51 ID:??? (+67,+29,-14)
なぜそう思うのかも書かずにいきなり>>769みたいなこと言い出す奴と
共同作業することになる皆様・・・ご愁傷様
778 : Name_Not - 2013/01/06(日) 14:06:44.94 ID:??? (-8,-29,-2)
結論:JavaScriptは糞。
779 : Name_Not - 2013/01/06(日) 15:03:02.79 ID:??? (-6,-29,+0)
ECMAScript最強
780 : Name_Not - 2013/01/06(日) 17:03:57.65 ID:??? (-18,+3,-20)
thisはnewとその場呼び出しの匿名関数とevalとイベントハンドラが例外と覚えておけば混乱しない
781 : Name_Not - 2013/01/06(日) 17:32:15.09 ID:??? (+52,+29,-19)
さすがにそれは例外が多すぎるだろ
782 : Name_Not - 2013/01/06(日) 22:34:37.67 ID:??? (+55,+27,-8)
thisが駄目って、今時の言語は相当数が該当しない?
783 : Name_Not - 2013/01/06(日) 23:05:27.99 ID:??? (+91,+29,-57)
thisは単に動的スコープをもってるに過ぎないだろ
構文スコープと動的スコープの区別がつかない奴が混乱してるだけ
784 : Name_Not - 2013/01/07(月) 00:28:12.29 ID:??? (+70,+29,-7)
>>783
そのあたりちゃんとカバーしてる初心者向け資料ってある?
785 : Name_Not - 2013/01/07(月) 07:59:04.72 ID:??? (+57,+29,-21)
thisはそもそも変数じゃないからスコープを持ってるとも言わないんじゃね?
786 : Name_Not - 2013/01/07(月) 08:14:30.97 ID:??? (+57,+29,-57)
動的に参照できる値が変化するけど
いわゆる動的スコープとは全然違うものだね
通常関数呼び出しするとグローバルオブジェクトが設定されたりするし
787 : Name_Not - 2013/01/07(月) 08:19:41.03 ID:??? (+36,-29,-61)
applyとcallとメソッド方式の関数呼び出しで指定されたものに変更
普通の関数呼び出しでグローバルオブジェクトに変更
evalは変わらない

thisってこれだけだと思ってたけどこれじゃダメなの?
788 : Name_Not - 2013/01/07(月) 08:29:27.13 ID:??? (-6,-29,-14)
thisはpenです。
789 : Name_Not - 2013/01/07(月) 08:34:29.69 ID:??? (-6,-29,-15)
eval(this)
790 : Name_Not - 2013/01/07(月) 09:37:43.00 ID:??? (+117,+28,-28)
「thisは呼ばれた関数を持っている親オブジェクトを参照する」
じゃいかんの?
791 : Name_Not - 2013/01/07(月) 09:47:50.59 ID:??? (+34,+29,-14)
>>790
thisは、関数が何処で定義されているかには関係無く、関数をどう呼んだかで変わるだろ?
794 : Name_Not - 2013/01/07(月) 10:57:30.49 ID:??? (+61,+18,-41)
>>790
その考え方だと、あるオブジェクトに所属する?関数の中で定義されてる関数の親オブジェクトは何?
795 : Name_Not - 2013/01/07(月) 11:08:59.90 ID:??? (+70,-29,-91)
ん?混乱してる人がいるようだな
this値とはどのオブジェクトのプロパティとして呼び出されるかだよ基本的には、かんたーん
例外は>>780のとおり

コードにはグローバルコード、関数コード、evalコードがあって、
それぞれのコードが呼び出されるときにthis値が設定される
797 : Name_Not - 2013/01/07(月) 11:14:14.82 ID:??? (-7,-29,-18)
呼ばれた関数はwindow.fではなくobj.fだから親オブジェクトはobjになってしまう
798 : Name_Not - 2013/01/07(月) 11:21:12.93 ID:??? (-1,-29,-76)
>>796
fがグローバルスコープにある無しに関係無く、
f()とやるとobj.f()の中でthisはグローバルオブジェクトになるぞ?
799 : Name_Not - 2013/01/07(月) 11:29:33.23 ID:abM/ZTW+ (-20,+29,-2)
>>797
ん?そうなんだ
ずっと勘違いしてたかも
800 : Name_Not - 2013/01/07(月) 11:33:30.22 ID:??? (+13,+29,-35)
>>795
ただ普通に関数を呼んだときは、どのオブジェクトのプロパティとして呼ばれたことになるの?
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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