元スレ+ JavaScript の質問用スレッド vol.105 +
JavaScript覧 / PC版 /みんなの評価 :
351 = :
ご教授願います
【環境】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 = :
>>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 = :
>>350
ClassAのメソッドからだけ使えるClassBコンストラクタを作りたいならこんな感じ?
var ClassA = function() {/*ClassAコンストラクタ*/};
(function() {
ClassA.prototype = {
/*ClassAのメソッド*/
};
var ClassB = function() {/*ClassBコンストラクタ*/}
ClassB.prototype = {
/*ClassBのメソッド*/
};
})();
まあでもvar ClassA=...;も即時関数の中にいれて、
即時関数の中からClassAだけをグローバルスコープに公開するとかの方が普通かな?
354 = :
>>352
うおおおお!!!
こ、これです!ありがとうございます!
ちなみになのですが、この方法だと別窓トップページとは別に親窓にもトップページが表示されてしまい、トップページ表示が計2ページになってしまうのですが、
別窓出現時、親窓は変化させない、もしくは親窓を閉じる方法などありますでしょうか?
355 = :
>>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 = :
>>355
うおおおお・・・!!!あなたは神か・・・
IEでうまく動きました!重ね重ねありがとうございます!
元々のやつをリサイズ・移動しようとしたのですが、IE chromeともに元々のやつに複数個のタブが
あると、リサイズ・移動がされなく、それだったら別窓にとなりますた・・・。
357 = :
クリックしたら勝手にリサイズされるサイトって何年前によくあったものだったかな?w
358 = :
ウィンドウ位置とサイズを勝手に変更されることほど不快なことはない
360 = :
x,y座標を指定するとなめらかにスクロールしてくれるライブラリってあります?
よくあるのはリンクのクリックイベントの置き換えばっかりで…
362 = :
>>361
ありがとうございます。
これってJQueryですか?
363 = :
調べればわかるんじゃない
367 = :
>>366
ありがとうございます。
C言語の簡単な知識程度しかないのですが、
グローバル関数で使用したいか、
ローカル関数で使用したいか、で使い分ける。
という解釈で合ってますでしょうか?
368 = :
>367
合ってない。
369 = :
関数を条件によって変えたいとき、関数宣言は使えない
違いはコレだけなん?
372 = :
右辺に関数名書けばいいから使えないってわけでもないけれど
373 :
詐欺師栗林正明が討ち滅びました
犯罪者小嶋滝久が孤独死しました
精神障害者橋本ゆきのりが撲殺死にました
妖怪人間神田達行が自殺ました
極悪福井一家が崩壊しました
借金魔王長岡章が自殺しました
内部アンチの柏崎まさかつの本性がバレました
盗人鈴木ひでゆきが警察に捕まりました
大変におめでとうございます
374 = :
最近フォームの項目を途中まで入力した状態で
ハイパーリンクを踏んだりブラウザの戻るボタンで移動しようとした時に
「途中まで入力しています、このまま移動しますか? 移動する/このページに残る」みたいな
アラートが出るサイトが多いんですが、あれはどうやってるんでしょう
何かそれ用のプラグインだかライブラリだかあるんでしょうか
376 = :
俺も初めて知ったけどonbeforeunloadイベントを使うらしい
http://d.hatena.ne.jp/xyk/20110208/1297164760
377 = :
>>376
どうもありがとうございます
そのイベントの発生時にinput他のvalueをチェックする感じでしょうか
試してみます、ありがとう
378 = :
【環境】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 = :
すみません、説明が不足していたので補足させてください。
PHPからjavascriptにデータを渡すのにajaxのgetメソッドを利用しようと
試しに下記のようなfunctionを書きましたが、うまく実行されません。
間違っている部分をどうかご指摘いただけないでしょうか?
$.ajax({
type: "GET",
url: "/test2.php",
dataType:"json",
success: function(array) {
alert(array[0].userName);
};
});
381 = :
回答ありがとうございます、
ご指摘いただいた点を修正してみましたが、やはり動きません。
二次元配列の習得は本当にこれでいいのでしょうか?
array[0].userName)
ブラウザーでのデバッグを試してみようと思います。
ありがとうございました。
383 = :
うまく実行されないって言われても意味不明なんだよなあー
384 = :
ブラウザのコンソールを見てないってのが信じられない
FirefoxだったらFirebugも入れてAjaxの通信をチェックするのも当然だろ
386 :
まあ他の言語をずっとやってて
初めてJSやります、って話ならわからなくもないが
JSコンソールを使えとか
「うごかない」じゃわかりませんって
テンプレに書いてなかったっけ?
387 = :
本当に申し訳ありません、皆様のおっしゃるとおり私の不勉強でした。
エラーハンドリングも行い、コンソールも確認してはいたものの、
なぜか何のエラーメッセージも帰ってこないため原因に検討がつかず途方にくれておりました。
ブラウザー上でデバッグを行い、dataTypeの部分を削ったところ、平文のテキストとしてはAJAX通信で読み込めたので
そもそもjavascriptが>>378のJSONをJSONフォーマットだと認識していないのが原因のようです。
evalでJSONに変換することも不可能でした。
フォーマットに問題があるのかと思い、>>378のJSONを下記のサイトでチェックしましたが、文法に問題は無いようです。
http://jsonlint.com/
388 = :
すみませんが、もう一度質問させてください。
【環境】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 = :
ソースコードです。
//test2.php
//localのmysqlからuser tableを読み込みJSONに変換しています。
http://ideone.com/y9EHQn
//上記のファイルから生成されたJSON
http://ideone.com/cAyTwW
//test.html
//ここに含まれるjavaScriptでエラーが出ます。
http://ideone.com/JSAvSl
391 = :
生成されたJSONとやらをevalしてみたけど成功した
392 = :
俺の環境だと>>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 = :
Unexpected token ILLEGAL でぐぐったら
改行コードが入ってるからみたいだけど
394 = :
皆様回答ありがとうございます。
これでなんとか問題が切り分けられそうです。本当にありがとうございました。
>>390
firebugで確認してみたところ、通信自体は成功しており
console.log(msg); でも平文のtextでは受信できているようです。
>>391
テストしていただきありがとうございます。
JSONの文法自体は問題ないようですね。
>>392
いただいたPHPのコードではエラーが出ずに変換に成功しました。
おそらくは僕のPHPのコードの方に問題があるようです。
>>393
Firebugで確認しました
自分のPHPのコードの方をもう一度確認してみますね。
395 = :
うざい死ね
396 :
どうしたんだよ急に
397 = :
>>394
PHPがデータを返す時に指定するHTTPヘッダ(content-type)の指定が違うんじゃないの
自分はこうしてるけど
header('Content-type: application/json');
print json_encode($rs);
400 = :
エラーの原因が分かりました。
PHPの終了タグのあとに空白文字が入っており、それをJavaScriptが読み込んでいたようです
PHPはコードの終了判断を"?>か"EOF"で判断しているようなので、終了タグは入れない方が良いようですね。
お騒がせしてすみません、相談にのってもらいありがとうございました。
類似してるかもしれないスレッド
- + JavaScript の質問用スレッド vol.100 + (1001) - [97%] - 2012/6/13 22:46
- + JavaScript の質問用スレッド vol.101 + (1001) - [97%] - 2012/7/16 14:15
- + JavaScript の質問用スレッド vol.102 + (1001) - [97%] - 2012/9/11 17:30
- + JavaScript の質問用スレッド vol.103 + (1001) - [97%] - 2012/11/9 15:30
- + JavaScript の質問用スレッド vol.104 + (1001) - [97%] - 2013/1/28 4:00
- + JavaScript の質問用スレッド vol.106 + (1001) - [97%] - 2013/7/20 9:30
- + JavaScript の質問用スレッド vol.107 + (1001) - [97%] - 2013/9/7 10:16
- + JavaScript の質問用スレッド vol.108 + (1001) - [97%] - 2013/9/21 15:16
- + JavaScript の質問用スレッド vol.109 + (1001) - [97%] - 2013/10/7 13:16
- + JavaScript の質問用スレッド vol.135 + (1002) - [97%] - 2018/11/23 10:30
- + JavaScript の質問用スレッド vol.125 + (1001) - [97%] - 2015/10/7 17:45
- + JavaScript の質問用スレッド vol.115 + (1001) - [97%] - 2014/5/29 16:16
- + JavaScript の質問用スレッド vol.141 + (881) - [95%] - 2021/4/19 9:00
- + JavaScript の質問用スレッド vol.122 + (116) - [95%] - 2018/5/2 18:30
- + JavaScript の質問用スレッド vol.121 + (1001) - [95%] - 2015/1/1 18:30
- + JavaScript の質問用スレッド vol.122 + (1004) - [95%] - 2015/2/14 4:45
- + JavaScript の質問用スレッド vol.126 + (348) - [95%] - 2023/1/12 17:00
トップメニューへ / →のくす牧場書庫について