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

    私的良スレ書庫

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

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

    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
    351 : Name_Not - 2013/02/23(土) 14:09:58.20 ID:??? (+9,-30,-186)
    ご教授願います

    【環境】OS:7  IE9  chrome v24
    【何をしたのか】自身のWEBトップページを別窓でリサイズして表示させたいです。
    【エラーメッセージ】別窓表示、リサイズはされているのですが、永遠とリロードを繰り返すような状態になり、正常に表示されません。
    【期待する結果】リロードをやめさせたい、正常に表示させたいです。

    【サンプルコード】$(function(){
    window.open("index.html", "new", "width=1200,height=700");
    var moveX=30;
    var moveY=150;
    window.moveTo(moveX,moveY);
    });


    よろしくお願いします。
    352 : Name_Not - 2013/02/23(土) 14:15:31.45 ID:??? (+40,-30,-131)
    >>351
    未検証だけど

    $(function(){
    if(!window.opener || window.opener.closed){
    window.open("index.html", "new", "width=1200,height=700");
    var moveX=30;
    var moveY=150;
    window.moveTo(moveX,moveY);
    }
    });
    353 : Name_Not - 2013/02/23(土) 14:30:42.51 ID:??? (+3,-30,-175)
    >>350
    ClassAのメソッドからだけ使えるClassBコンストラクタを作りたいならこんな感じ?
    var ClassA = function() {/*ClassAコンストラクタ*/};
    (function() {
     ClassA.prototype = {
      /*ClassAのメソッド*/
     };
     var ClassB = function() {/*ClassBコンストラクタ*/}
     ClassB.prototype = {
      /*ClassBのメソッド*/
     };
    })();
    まあでもvar ClassA=...;も即時関数の中にいれて、
    即時関数の中からClassAだけをグローバルスコープに公開するとかの方が普通かな?
    354 : Name_Not - 2013/02/23(土) 14:30:53.08 ID:??? (+74,+29,-52)
    >>352
    うおおおお!!!
    こ、これです!ありがとうございます!

    ちなみになのですが、この方法だと別窓トップページとは別に親窓にもトップページが表示されてしまい、トップページ表示が計2ページになってしまうのですが、
    別窓出現時、親窓は変化させない、もしくは親窓を閉じる方法などありますでしょうか?
    355 : Name_Not - 2013/02/23(土) 14:37:50.23 ID:??? (+49,-30,-211)
    >>354
    $(function(){
    if(!window.opener || window.opener.closed){
    var newWindow = window.open("index.html", "new", "width=1200,height=700");
    if(newWindow){
    window.close();

    var moveX=30;
    var moveY=150;
    newWindow.moveTo(moveX,moveY);
    }
    }
    });

    でも、結局親窓を閉じるんだったら、
    新たに開くんじゃなくて元々のやつをリサイズ・移動したほうがいいのでは?

    あと、そもそも window.open, window.moveTo, window.resizeTo とかは
    ブラウザによって使用が制限されてる場合が多いから
    よっぽどのことがない限り使わないほうがいいと思うけど。
    356 : Name_Not - 2013/02/23(土) 14:54:23.18 ID:??? (+69,+29,-46)
    >>355
    うおおおお・・・!!!あなたは神か・・・
    IEでうまく動きました!重ね重ねありがとうございます!

    元々のやつをリサイズ・移動しようとしたのですが、IE chromeともに元々のやつに複数個のタブが
    あると、リサイズ・移動がされなく、それだったら別窓にとなりますた・・・。
    357 : Name_Not - 2013/02/23(土) 17:05:13.11 ID:??? (+57,+29,-22)
    クリックしたら勝手にリサイズされるサイトって何年前によくあったものだったかな?w
    358 : Name_Not - 2013/02/23(土) 17:07:02.87 ID:??? (+57,+29,-10)
    ウィンドウ位置とサイズを勝手に変更されることほど不快なことはない
    359 : Name_Not - 2013/02/23(土) 18:32:05.86 ID:9bksOlEV (-20,+29,-22)
    ものによるんじゃね?
    小さいウィンドウがポコポコ開いて
    その中を通してコンテンツが移動するのは良かった
    googleのプロモーション?かなんかのやつ
    360 : Name_Not - 2013/02/23(土) 19:42:57.89 ID:??? (+8,-19,-17)
    x,y座標を指定するとなめらかにスクロールしてくれるライブラリってあります?
    よくあるのはリンクのクリックイベントの置き換えばっかりで…
    362 : Name_Not - 2013/02/23(土) 20:26:56.99 ID:??? (+6,+9,-14)
    >>361
    ありがとうございます。
    これってJQueryですか?
    363 : Name_Not - 2013/02/23(土) 23:28:52.15 ID:??? (+52,+29,-1)
    調べればわかるんじゃない
    367 : Name_Not - 2013/02/24(日) 11:04:02.08 ID:??? (+28,-29,-93)
    >>366
    ありがとうございます。
    C言語の簡単な知識程度しかないのですが、
    グローバル関数で使用したいか、
    ローカル関数で使用したいか、で使い分ける。
    という解釈で合ってますでしょうか?
    368 : Name_Not - 2013/02/24(日) 12:49:55.07 ID:??? (+52,+26,+0)
    >367
    合ってない。
    369 : Name_Not - 2013/02/24(日) 14:49:21.69 ID:??? (+54,+26,-35)
    関数を条件によって変えたいとき、関数宣言は使えない
    違いはコレだけなん?
    370 : Name_Not - 2013/02/24(日) 15:45:29.74 ID:??? (-2,-30,-11)
    function A() {
     A = function () { return 2; }
     return 1;
    }
    A(); //1
    A(); //2
    とか?
    372 : Name_Not - 2013/02/24(日) 17:41:49.26 ID:??? (+57,+29,-3)
    右辺に関数名書けばいいから使えないってわけでもないけれど
    373 : 創価連合 - 2013/02/24(日) 18:25:33.66 ID:2phY8sZJ (+30,+30,-81)
    詐欺師栗林正明が討ち滅びました

    犯罪者小嶋滝久が孤独死しました

    精神障害者橋本ゆきのりが撲殺死にました

    妖怪人間神田達行が自殺ました

    極悪福井一家が崩壊しました

    借金魔王長岡章が自殺しました

    内部アンチの柏崎まさかつの本性がバレました

    盗人鈴木ひでゆきが警察に捕まりました

    大変におめでとうございます
    374 : Name_Not - 2013/02/24(日) 20:32:10.78 ID:??? (+62,+29,-108)
    最近フォームの項目を途中まで入力した状態で
    ハイパーリンクを踏んだりブラウザの戻るボタンで移動しようとした時に
    「途中まで入力しています、このまま移動しますか? 移動する/このページに残る」みたいな
    アラートが出るサイトが多いんですが、あれはどうやってるんでしょう
    何かそれ用のプラグインだかライブラリだかあるんでしょうか
    376 : Name_Not - 2013/02/24(日) 21:18:14.44 ID:??? (+7,-29,-5)
    俺も初めて知ったけどonbeforeunloadイベントを使うらしい
    http://d.hatena.ne.jp/xyk/20110208/1297164760
    377 : Name_Not - 2013/02/24(日) 22:18:28.85 ID:??? (+9,-19,-9)
    >>376
    どうもありがとうございます
    そのイベントの発生時にinput他のvalueをチェックする感じでしょうか
    試してみます、ありがとう
    378 : Name_Not - 2013/02/25(月) 00:23:37.90 ID:??? (+153,-30,-160)
    【環境】Windows8, Firefox19
    【何をしたのか】PHPからencodeした二次元配列のJSONからデータを取り出したい。
    【期待する結果】array[0].userNameでGimをリターンして欲しい。

    【サンプルコード】
    //データを取り出したいJSONのサンプルです。
    [
    {
    "userName": "Gim",
    "password": "gim",
    "name": "gim",
    "accountType": "1"
    },
    {
    "userName": "Jack",
    "password": "jac",
    "name": "Jack",
    "accountType": "2"
    }
    ]
    379 : 378 - 2013/02/25(月) 00:31:32.54 ID:??? (+7,-30,-165)
    すみません、説明が不足していたので補足させてください。

    PHPからjavascriptにデータを渡すのにajaxのgetメソッドを利用しようと
    試しに下記のようなfunctionを書きましたが、うまく実行されません。
    間違っている部分をどうかご指摘いただけないでしょうか?

    $.ajax({
    type: "GET",
    url: "/test2.php",
    dataType:"json",
    success: function(array) {
    alert(array[0].userName);
    };
    });
    380 : Name_Not - 2013/02/25(月) 00:54:36.55 ID:??? (-1,-29,-51)
    >>379
    ・"GET"の後にカンマがない
    ・関数式の後に不要なセミコロン
    各ブラウザでエラーコンソールを表示する方法を確認しよう
    381 : 378 - 2013/02/25(月) 01:36:33.32 ID:??? (+7,-29,-38)
    回答ありがとうございます、

    ご指摘いただいた点を修正してみましたが、やはり動きません。
    二次元配列の習得は本当にこれでいいのでしょうか?

    array[0].userName)

    ブラウザーでのデバッグを試してみようと思います。
    ありがとうございました。
    382 : Name_Not - 2013/02/25(月) 03:14:47.44 ID:??? (-1,-29,-67)
    >>381
    プロパティの辿り方はそれで問題ないよ
    $.ajax(というかXMLHttpRequest)は基本的にローカルだと動かないけど、
    それが原因だったりしないかな
    383 : Name_Not - 2013/02/25(月) 03:17:33.77 ID:??? (+57,+29,-4)
    うまく実行されないって言われても意味不明なんだよなあー
    384 : Name_Not - 2013/02/25(月) 03:32:54.26 ID:??? (+6,-21,-26)
    ブラウザのコンソールを見てないってのが信じられない
    FirefoxだったらFirebugも入れてAjaxの通信をチェックするのも当然だろ
    385 : Name_Not - 2013/02/25(月) 05:10:39.00 ID:??? (-2,-30,-79)
    >alert(array[0].userName);
    のまえに
    alert(array);
    をみてみるべきだろう。
    alertよりコンソールに出す方がいいけど。
    386 : Name_Not - 2013/02/25(月) 05:19:58.25 ID:7QRlEkj3 (+24,+29,-35)
    まあ他の言語をずっとやってて
    初めてJSやります、って話ならわからなくもないが

    JSコンソールを使えとか
    「うごかない」じゃわかりませんって
    テンプレに書いてなかったっけ?
    387 : 378 - 2013/02/25(月) 09:59:31.06 ID:??? (+75,+28,-259)
    本当に申し訳ありません、皆様のおっしゃるとおり私の不勉強でした。
    エラーハンドリングも行い、コンソールも確認してはいたものの、
    なぜか何のエラーメッセージも帰ってこないため原因に検討がつかず途方にくれておりました。

    ブラウザー上でデバッグを行い、dataTypeの部分を削ったところ、平文のテキストとしてはAJAX通信で読み込めたので
    そもそもjavascriptが>>378のJSONをJSONフォーマットだと認識していないのが原因のようです。
    evalでJSONに変換することも不可能でした。
    フォーマットに問題があるのかと思い、>>378のJSONを下記のサイトでチェックしましたが、文法に問題は無いようです。
    http://jsonlint.com/
    388 : 378 - 2013/02/25(月) 10:05:03.54 ID:??? (+19,-30,+0)
    すみませんが、もう一度質問させてください。
    【環境】Windows 8, XAMPP上でテスト、Firefox19
    【何をしたのか】二次元配列のJSONをJavascriptで取り扱うために、evalを使い二次元のarrayに変換しようとした。
    【エラーメッセージ】
    Uncaught SyntaxError: Unexpected token ILLEGAL JSONTest.html:17
    $.ajax.success JSONTest.html:17
    c jquery-1.9.1.min.js:3
    p.fireWith jquery-1.9.1.min.js:3
    k jquery-1.9.1.min.js:5
    r
    【期待する結果】>>378のJSONをJavaScriptで扱える二次元Arrayに変換したい。
    【サンプルコード】
    $.ajax({
    type: "GET",
    url: "test2.php",
    //JSON typeでは読み込めなかったためtxtとして読み込む
    //dataType:"json",
    success: function(msg) {
    console.log(msg);
    //ここでtxtをJSONに変換しようとしてエラー ・
    console.log(eval(msg));
    },
    false: (function(jqXHR, textStatus, errorThrown) {
    console.log("Error: " + textStatus);
    console.log("Test: " + jqXHR.responseText);
    })
    });
    389 : 378 - 2013/02/25(月) 10:05:47.66 ID:??? (+9,-30,-72)
    ソースコードです。

    //test2.php
    //localのmysqlからuser tableを読み込みJSONに変換しています。
    http://ideone.com/y9EHQn

    //上記のファイルから生成されたJSON
    http://ideone.com/cAyTwW

    //test.html
    //ここに含まれるjavaScriptでエラーが出ます。
    http://ideone.com/JSAvSl
    391 : Name_Not - 2013/02/25(月) 11:10:17.72 ID:??? (+4,-28,-43)
    生成されたJSONとやらをevalしてみたけど成功した
    392 : Name_Not - 2013/02/25(月) 11:10:40.87 ID:??? (+9,-30,-134)
    俺の環境だと>>389のtest.htmlそのままコピペして動くよ?
    test2.phpの方はメンドクサイからこんな感じにしてみたけど
    <?php
    $user[] = array('userName'=>'Gim','password'=>'gim','name'=>'gim','accountType'=>'1');
    $user[] = array('userName'=>'Jack','password'=>'jac','name'=>'Jack','accountType'=>'2');
    echo json_encode($user);
    ?>
    PHPのことは良く知らないからなんか勘違いしてるかもしれない
    393 : Name_Not - 2013/02/25(月) 11:16:55.61 ID:??? (+3,-30,-24)
    Unexpected token ILLEGAL でぐぐったら
    改行コードが入ってるからみたいだけど
    394 : 378 - 2013/02/25(月) 11:53:20.18 ID:??? (+7,-29,-155)
    皆様回答ありがとうございます。
    これでなんとか問題が切り分けられそうです。本当にありがとうございました。

    >>390
    firebugで確認してみたところ、通信自体は成功しており
    console.log(msg); でも平文のtextでは受信できているようです。

    >>391
    テストしていただきありがとうございます。
    JSONの文法自体は問題ないようですね。

    >>392
    いただいたPHPのコードではエラーが出ずに変換に成功しました。
    おそらくは僕のPHPのコードの方に問題があるようです。

    >>393
    Firebugで確認しました
    自分のPHPのコードの方をもう一度確認してみますね。
    395 : Name_Not - 2013/02/25(月) 12:57:44.45 ID:??? (+30,+12,+1)
    うざい死ね
    396 : Name_Not - 2013/02/25(月) 13:04:00.41 ID:GXe+xKGj (+19,+29,-2)
    どうしたんだよ急に
    397 : Name_Not - 2013/02/25(月) 13:13:32.22 ID:??? (+3,-30,-87)
    >>394
    PHPがデータを返す時に指定するHTTPヘッダ(content-type)の指定が違うんじゃないの
    自分はこうしてるけど
    header('Content-type: application/json');
    print json_encode($rs);
    398 : Name_Not - 2013/02/25(月) 13:20:43.20 ID:??? (+0,-28,-14)
    やっぱAjaxはxmlでやったほうがいいな
    399 : Name_Not - 2013/02/25(月) 13:39:57.84 ID:EpqYt4PP (-20,+29,-14)
    えー
    JSONの方が気分的に楽だわー
    400 : 378 - 2013/02/25(月) 14:15:50.09 ID:??? (+29,-3,-56)
    エラーの原因が分かりました。
    PHPの終了タグのあとに空白文字が入っており、それをJavaScriptが読み込んでいたようです
    PHPはコードの終了判断を"?>か"EOF"で判断しているようなので、終了タグは入れない方が良いようですね。

    お騒がせしてすみません、相談にのってもらいありがとうございました。
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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