のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,062,832人
昨日: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
    701 : Name_Not - 2012/12/26(水) 06:14:38.59 ID:??? (+13,-30,-164)
    JavaScriptでゲームを作ろうとしてるんですが、
    canvasで円を描いて、円の中をクリックしたら円を移動させて、
    っていう、AIM練習ゲームみたいなのを作りたいんですが、
    円をクリックしたら、処理をさせるみたいな、
    四角の場合、
    window.document.onclick = function(e){
    var obj = new Object();
    obj.x = e.pageX;
    obj.y = e.pageY;
    if(obj.x >= 100 && obj.x <= 200 && obj.y >= 100 && obj.y <= 200){処理}
    }
    円の場合どうすればいいでしょうか?教えてください。
    702 : Name_Not - 2012/12/26(水) 08:44:37.13 ID:??? (+3,-30,-68)
    なんでObject使っているのかは分からんけど、円の中心(x0,y0)半径rのとき
    (x,y)が円内にある条件は「(x-x0)**2 + (y-y0)**2 < r**2」だから。
    ただし「**2」は2乗を表す(JavaScriptにはない)。
    703 : 701 - 2012/12/26(水) 09:22:55.98 ID:??? (+6,-21,-41)
    教えていただいた条件を、ifの中で使って、円をクリックしたら、
    ちょうどぴったり円の中でクリックしたときだけ、
    ifの中の処理を実行することができました、
    ありがとうございました。
    704 : Name_Not - 2012/12/26(水) 10:29:32.46 ID:??? (+13,-30,-209)
    Javascriptの変数定義の順番について教えてください
    thisについて色々試していて、下のコードを書いたんですが
    変数定義がAの位置かBの位置かで実行結果が変わります
    なんでですか?

    <script type="text/javascript">
    'use strict';

    var testWindowFunc1 = function(){ console.log(this); }
    window.testWindowFunc1(); // => Window {top: Window, ...}

    var testWindowFunc2 = function(){ console.log(this.testWindowVal); }
    // window.testWindowVal = "Hoge"; // A
    window.testWindowFunc2(); // => Aの行をコメントアウトなら "Hoge", Bの行をコメントアウトなら undefined
    // window.testWindowVal = "Hoge"; // B
    </script>
    705 : Name_Not - 2012/12/26(水) 11:14:30.68 ID:??? (-1,-29,-39)
    > Aの行をコメントアウトなら "Hoge", Bの行をコメントアウトなら undefined
    そもそもこうはならないんだが(結果が逆)
    706 : Name_Not - 2012/12/26(水) 12:06:01.18 ID:??? (+6,-21,-40)
    すんません逆になってました、というか言葉間違ってた
    Aの行のコメント外したらHoge、Bの行のコメント外したらundefinedです
    Chromeでやってます
    707 : 704, 706 - 2012/12/26(水) 12:15:28.27 ID:??? (+57,+29,-50)
    あれ、当たり前のこと聞いている気がしてきた
    すみません704は取り消しでお願いします。
    なんでこんな質問したんだろう…
    708 : Name_Not - 2012/12/26(水) 12:44:44.34 ID:+iKQtizy (-20,+12,-126)
    JqueryのjScrollbarというプラグインを使っています。
    導入すると、オプションでマウスホイールでのスクロールも可能です。
    ただこのときに、スクロールバーの範囲内だけでなく、ページ全体も
    同時にスクロールされてしまいます。

    このプラグインに限った問題ではないのかもしれません。
    このページ全体のほうのスクロールを止めるにはどうすればよいでしょうか。

    こちらはプラグインのサイトになります
    http://demos.myjqueryplugins.com/jscrollbar/

    よろしくお願いします。
    709 : Name_Not - 2012/12/26(水) 18:03:03.72 ID:??? (+31,+29,-25)
    ホイールの動きを拾っているところで、イベントバブリングを
    止めてしまえば良いよ
    710 : Name_Not - 2012/12/26(水) 21:45:17.66 ID:??? (-2,-30,-46)
    <script type="text/javascript">
    var i=0;             ←こっちで定義した変数 i を
    </script>



    <script type="text/javascript">
    alert(i);             ←こっちで使うことって出来ますか?
    </script>
    711 : Name_Not - 2012/12/26(水) 21:59:43.77 ID:??? (+35,+17,+0)
    出来る
    712 : Name_Not - 2012/12/26(水) 22:53:33.01 ID:??? (-1,-29,-39)
    firefoxの最新バージョンでIndexedDatabaseのトランザクション処理に
    document.writeを使ったデバッグコードを入れると動作がおかしくなるのは仕様ですか?
    713 : Name_Not - 2012/12/26(水) 23:32:48.58 ID:??? (+3,-30,+0)
    var YouTube = new Object();
    YouTube.rev = 2;
    YouTube.SearchDesc = "Youtube by Darby_Crash"; //MOD BY Darby_Crash, original by Xiphirx
    YouTube.Name = "YouTube";
    YouTube.Search = function (keyword, page){
    var result = new Object();
    result.bypage = 20;
    result.start = (page-1)*result.bypage+1;
    var sortBy = "relevance";
    var catSpecified = false;

    if (keyword.charAt(0) == '$')
    {
    var keywordBu = keyword;
    var kpos = keyword.indexOf(" ");
    var category = keyword.substring(1, kpos);
    keyword = keyword.substring(kpos+1);
    catSpecified = true;
    }

    if (keyword.charAt(0) == '@')
    {
    sortBy = "published";
    }


    if (catSpecified == false)
    {
    c=GetContents('http://gdata.youtube.com/feeds/api/videos?q='+escape(keyword)+'&start-index='+result.start+'&max-results='+result.bypage+'&orderby='+sortBy+'&racy=in
    714 : Name_Not - 2012/12/26(水) 23:33:19.09 ID:??? (+53,-30,+0)
    }
    else
    {
    c=GetContents('http://gdata.youtube.com/feeds/api/videos?q='+escape(keyword)+'&start-index='+result.start+'&max-results='+result.bypage+'&orderby='+sortBy+'&racy=include&category='+category+'&v=1');
    }

    result.total = ext("<openSearch:totalResults>");
    result.VideoInfo = new Array();
    v = {attr:2};
    v.id = 0;
    v.Title = "YouTube Search Help";
    v.Description = "@query = search by upload date\n$category query = search in a category";
    v.URL = '';

    result.VideoInfo.push(v);
    while(p=c.indexOf("<entry",p)+1){
    v = {attr:2};//neither IDA|npp find this string ...0=RD 1= 2=SRD 3=S
    v.id = ext("<id>http://gdata.youtube.com/feeds/api/videos/","</id>");
    v.Title = ext("<title type='text'>");
    v.Description = ext("content type='text'>")+'\nUploader:'+ext("<name>");
    v.CommentCount = ext("countHint='")*1;
    v.Tags = ext("keywords>").replace(/,/g,"");
    v.LengthSeconds = ext("ds='")*1;
    v.RatingAvg = ext("average='")*1;
    v.RatingCount = ext("numRaters='")*1;
    v.MylistCount = ext("favoriteCount='")*1;
    v.ViewCount = ext("viewCount='")*1;
    v.ThumbnailURL = '';
    v.SaveFilename = v.id+".flv";
    v.URL = 'YouTube.play("'+v.id+'")';
    result.VideoInfo.push(v);
    }
    715 : Name_Not - 2012/12/26(水) 23:35:49.41 ID:??? (+21,-30,-144)
    YouTube.play = function (id){
    c=GetContents("http://www.youtube.com/watch?v="+id);p=0;
    var url = unescape(ext('url_encoded_fmt_stream_map','allowscriptaccess'));p=0;
    p = url.indexOf(",itag=5&url=", 0); preurl = url.ext('fallback_host=','.c.');
    p = url.indexOf(",itag=5&url=", 0); url1 = unescape(url.ext('.c.youtube.com','&type=video')); url2 = url.ext('&sig=','&quality=');
    var url = 'http://'+preurl+'.c.youtube.com'+url1+'&signature='+url2; //quality=small
    return url;
    }
    SiteList.push(YouTube);

    これでgotubeでyoutubeが見られたんですが  仕様変更で見られなってしまいました
    どの変を変えればいいのかさっぱりなんです・・・ 
    716 : Name_Not - 2012/12/27(木) 00:01:47.49 ID:S5V5JykO (+37,+29,-11)
    >>715
    では、まず1行目から読んでいって
    わからない部分が出てきたら、再質問してくだされ
    717 : Name_Not - 2012/12/27(木) 00:05:37.56 ID:??? (+28,-30,-146)
    >>716
    c=GetContents('http://gdata.youtube.com/feeds/api/videos?q='+escape(keyword)+'&start-index='+result.start+'&max-results='+result.bypage+'&orderby='+sortBy+'&racy=include&category='+category+'&v=1');

    このファイルなんですか?
    718 : Name_Not - 2012/12/27(木) 00:12:31.61 ID:??? (+56,+28,-12)
    javascriptを覚える行程ってどんな感じですか?
    プログラミング初心者なんですが 
    いいサイトありますか?
    719 : Name_Not - 2012/12/27(木) 00:15:31.26 ID:??? (-6,-29,-14)
    つドットインストール
    720 : "&q - 2012/12/27(木) 03:49:38.62 ID:??? (+46,+18,-25)
    ぼっち....
    この人Zextにはいったんですね 1.3でがちクランは入れるんだ!1.5の俺は神だな
    721 : Name_Not - 2012/12/27(木) 05:44:59.20 ID:??? (-11,-29,-2)
    cod?
    722 : Name_Not - 2012/12/27(木) 05:56:14.80 ID:??? (-1,-29,-3)
    Crying of Dourteyか
    723 : Name_Not - 2012/12/27(木) 10:39:32.13 ID:??? (+3,-30,-137)
    javascriptで、ループのフレームレートをtextに表示したいんですが、
    window.onload = function(){
    var countFps;
    function getFps(){
    function gameLoop(){
    countFps++;
    document.getElementById("text").value = fps;
    setTimeout(function(){gameLoop()},100);
    }
    fps=countFps;
    countFps=0;
    gameLoop();
    setTimeout(function(){getFps},1000);
    }
    getFps();
    }
    これでは、フレームレートが表示されるどころか、undifinedになってしまいます、
    ブラウザはIE10です、
    どうやったらフレームレートが表示させられますか?教えてください。
    724 : Name_Not - 2012/12/27(木) 11:00:51.42 ID:??? (-1,-29,-31)
    変数の初期化がされてない
    fpsが定義されてない
    setTimeout~getFpsが括弧忘れてる
    725 : Name_Not - 2012/12/27(木) 11:17:45.87 ID:??? (+13,-30,-124)
    ありがとうございます、
    window.onload = function(){
    var countFps = 0;
    var fps = 0;
    function getFps(){
    function gameLoop(){
    countFps++;
    document.getElementById("text").value = fps;
    setTimeout(function(){gameLoop()},100);
    }
    fps=countFps;
    countFps=0;
    gameLoop();
    setTimeout(function(){getFps()},1000);
    }
    getFps();
    }
    教えてくれたことを参考に、
    ここまでできました、ですが、countFpsとfpsが、どんどん増えて行ってしまいます。
    どうすれば、textにフレームレートが表示させられますか?教えてください、お願いします。
    726 : Name_Not - 2012/12/27(木) 12:00:10.96 ID:??? (+7,-20,-2)
    gameLoop何回呼び出してんだよ
    727 : 725 - 2012/12/27(木) 12:22:52.46 ID:??? (+3,-29,-22)
    教えていただいたことを参考に、
    gameLoopをgetFpsの外に移動させて、
    function()から一回だけ呼び出したら、なんと、
    textにフレームレートが表示されました!
    お二方、教えてくれて、ありがとうございました。
    728 : Name_Not - 2012/12/27(木) 15:25:54.36 ID:S5V5JykO (+35,+28,-18)
    >>717
    JS以外の質問はスレ違いだから、せめてググってからにしてもらえますでしょうか
    http://developers.google.com/youtube/2.0/reference?hl=ja
    729 : Name_Not - 2012/12/28(金) 17:21:17.24 ID:??? (+4,-30,-94)
    GreaseMonkey用のscriptを作りたいんんですが、

    「href=.*\/status\/(\d+).*\</a\>」
    の○桁の数字(\d+)部分を↓に入れて、
    「http://api.twitter.com/1/statuses/show/(\d+).json」
    そこの、"retweet_count"要素の数値を取得して
    表示を
    「href=.*\/status\/(\d+).*\</a\>」+「取得した"retweet_count"の数値」
    にするにはどう記述したら良いか教えて頂けませんか?

    はちゃめちゃな質問ですが、
    よろしくお願いします。
    730 : Name_Not - 2012/12/28(金) 17:43:14.78 ID:??? (+69,+29,-1)
    >>729
    どこでつまずいてるのか詳しく
    732 : Name_Not - 2012/12/28(金) 19:05:41.76 ID:??? (+47,-30,-82)
    >>730
    javascript自体ほとんど分からない状態でして、
    重要な部分さえ分かれば
    後は他のscriptを参考に見よう見真似で作ってみようと。

    >>731
    レスありがとうございます!!

    >文字列.replace(/href=.*¥/status¥/(¥d+).*¥</a¥>/,function($0,$1){
      ごにょごにょ
    })

    「href=.*\/status\/(\d+).*\</a\>」の部分は $0
    「\d+」は $1を使えばいいって事ですよね?

    これを手掛かりに何とかやってみます!
    出来なかったら、また質問させていだたくかもしれません。
    733 : Name_Not - 2012/12/28(金) 19:15:01.48 ID:??? (+65,+29,-1)
    >>732
    いや、もう戻ってこなくていい。
    734 : Name_Not - 2012/12/28(金) 19:23:41.90 ID:??? (+11,-6,+0)
    &yen;
    736 : 732 - 2012/12/28(金) 22:00:10.46 ID:??? (+3,-27,+0)
    >>733
    (´;ω;`)ウッ…
    737 : Name_Not - 2012/12/29(土) 00:35:51.86 ID:??? (+52,+29,-2)
    もう来なくていいに同意
    738 : Name_Not - 2012/12/29(土) 04:23:30.82 ID:??? (-1,-29,-17)
    コンソールに出ないってことは </TABLE> が無いとかじゃね?
    740 : Name_Not - 2012/12/29(土) 11:09:05.22 ID:??? (+32,-29,-55)
    JavaScriptで、わからないことがあるので、質問します。
    var x = 1.2
    とか、整数か、小数点数が入ってる変数があります、
    変数の中身が、整数のときだけとか、小数点数のときだけに、処理をさせるには、
    どうすればいいですか?教えてください、お願いします。
    741 : Name_Not - 2012/12/29(土) 11:17:38.22 ID:??? (+86,+30,+0)
    742 : Name_Not - 2012/12/29(土) 11:35:06.22 ID:??? (+73,+29,-19)
    >>741
    見てみました、そのサイトの138番ので、
    わかりました、やりたいことができました、ありがとうございました!
    743 : Name_Not - 2012/12/29(土) 12:32:06.08 ID:??? (-11,-29,-6)
    >>739
    Content-Typeを上書きする拡張を使う
    744 : Name_Not - 2012/12/29(土) 12:34:21.34 ID:??? (+8,-29,-3)
    >>742
    138は参考になった投票の数
    745 : Name_Not - 2012/12/29(土) 22:14:02.24 ID:??? (+3,-30,-231)
    ボタンを押したらテキストエリア内にあるタグを入れようと思ってるんですが、
    その関数で、

    function puttag(){
    var tag = "タグ";
    var target = document.getElementsByTagName('textarea')[0];

    target.innerHTML += tag

    }

    っていう関数を書いてるんですが、
    テキストエリアが空白の状態であれば、指定したタグがテキストエリア内に目に見えて表示されるのですが、
    最初に文字が入っている状態でこの関数を実行すると、「テキストエリア内にタグが入っている」のに目に見えて表示されません。

    なぜタグが入っていると判断したかについては、タグをinnerHTMLに代入した直後にalertで表示してみると、ちゃんとタグが表示されたからです。
    でもブラウザ上には表示されません。

    ブラウザ上でも表示させるにはどうすればいいでしょうか?
    746 : Name_Not - 2012/12/30(日) 02:59:30.01 ID:??? (+23,-29,-9)
    × target.innerHTML
    ○ target.value
    747 : Name_Not - 2012/12/30(日) 10:15:35.59 ID:??? (+44,+13,+0)
    >>746
    うおおおおおおおおおお!
    ありがとうございました!!
    748 : Name_Not - 2012/12/31(月) 23:56:38.36 ID:??? (+9,-30,-110)
    間違ってライブラリのとこで質問してしまった
    ラッパーオブジェクトは不要で混乱を招くから
    new Boolean、new Number、new String、new Object、new Array
    は使用をさけるべきってgood partsに載ってるのですが、
    ラッパーオブジェクトってよくわからないのですが、
    やっぱ使わない方がいいのでしょうか?
    749 : Name_Not - 2013/01/01(火) 05:52:28.94 ID:??? (+4,-30,-313)
    >>748
    Object, Arrayは関係ない。どちらもオブジェクトだから
    (とはいえどちらも {}, [] の記法のみ使えばok)

    論理値、数値、文字列は基本的にプリミティブ値として使えばよい

    プリミティブ値に対して直接メソッド呼び出し・プロパティ参照を行うと、
    その都度内部的にラッパーオブジェクトが作られることになってる
    var str = 'hoge';
    console.log(str.toUpperCase()); // 内部的にnew String(str).toUpperCase()
    // 結果的にString.prototype.toUpperCaseが呼ばれ、大文字の"HOGE"を得られる

    プリミティブ値をオブジェクトとして作ると独自のプロパティを持たせることができるくらい
    var strObj = new String('hoge');
    strObj.jp = 'ほげ';
    console.log(strObj.jp);

    生成コストが高いし、扱いにくいので使われない
    'hoge' === 'hoge' // => true
    new String('hoge') === new String('hoge') // => false
    typeof 'hoge' // => "string"
    typeof new String('hoge') // => "object"
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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