私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレ+ JavaScript の質問用スレッド vol.81 +
JavaScript スレッド一覧へ / JavaScript とは? / 携帯版 / dat(gz)で取得 / トップメニューみんなの評価 :
レスフィルター : (試験中)
━━━本スレに書く事を許される者は以下の通り━━━━━
一、正しい(validな)HTMLとは何か知っており書ける者
一、JavaScriptはJavaとは別物であると知っている者
一、自ら学んでJavaScriptコードを書く意思を持つ者
一、ユーザに迷惑となるスクリプトを書かない者
一、質問を分かる日本語できちんと説明できる者
一、トラブルを再現する最小限のサンプルを貼れる者
一、テンプレ+FAQ>>2-10/過去ログ/関連資料を読める者
━━━━━━━━━━━━━━━━━━━━━━━━━━━
自力で書く気がない人は他のスレへ(テンプレ末尾参照)。
前スレhttp://hibari.2ch.net/test/read.cgi/hp/1284091954/
[必読]過去スレ全集http://www2.atpages.jp/mirror/2ch/javascript/
(閲覧のみ)http://usamimi.info/~mirrorhenkan/2ch/javascript/
(閲覧のみ)http://wing2.jp/~mirrorhenkan/2ch/javascript/
[必読]ガイドhttp://developer.mozilla.org/Ja/JavaScript
(GuideをReferenceに→Netscape版言語仕様。多くの実装が準拠:ECMA-262.ed3)
FAQ・注意・過去ログ・仕様書・関連資料・関連スレ>>1-7
一、正しい(validな)HTMLとは何か知っており書ける者
一、JavaScriptはJavaとは別物であると知っている者
一、自ら学んでJavaScriptコードを書く意思を持つ者
一、ユーザに迷惑となるスクリプトを書かない者
一、質問を分かる日本語できちんと説明できる者
一、トラブルを再現する最小限のサンプルを貼れる者
一、テンプレ+FAQ>>2-10/過去ログ/関連資料を読める者
━━━━━━━━━━━━━━━━━━━━━━━━━━━
自力で書く気がない人は他のスレへ(テンプレ末尾参照)。
前スレhttp://hibari.2ch.net/test/read.cgi/hp/1284091954/
[必読]過去スレ全集http://www2.atpages.jp/mirror/2ch/javascript/
(閲覧のみ)http://usamimi.info/~mirrorhenkan/2ch/javascript/
(閲覧のみ)http://wing2.jp/~mirrorhenkan/2ch/javascript/
[必読]ガイドhttp://developer.mozilla.org/Ja/JavaScript
(GuideをReferenceに→Netscape版言語仕様。多くの実装が準拠:ECMA-262.ed3)
FAQ・注意・過去ログ・仕様書・関連資料・関連スレ>>1-7
【質問を書く上で】
1)ユーザ(閲覧者)に迷惑がかかる性悪スクリプトは回答されない。
例: 別窓開きまくり、閉じる/戻るのを妨害、全画面占有、etcは最悪。
答えさせようと「分からねえんだろ」と煽っても無駄(過去スレが証明)。
2)言葉でぐだぐだ書かずにソースを貼る、ただし要点を整理して。
そのまま貼って動かせると試してもらいやすい(ただし回答者に連結さすな!)
長い(1レスに入らない)場合はアップロードしてURIを貼る。
3)初心者という言葉は危険なので使わない方がよい。
初心者を言い訳に自力で調べない/考えない奴が最悪に嫌われる。
4)自分で調べたこと/試したこときちんと書く(調べもしない奴は最低)。
ただ「動きません」「エラーです」は何も情報がないため嫌われる。
エラーは「どの行で何のエラー」を書く(ブラウザをそのように設定すれ)。
ブラウザの設定すらできんヤシはFFxのJavaScriptコンソールを使え!!!
OS、ブラウザ、バージョン、うまく行かない条件を明記しエラー再現可能に。
5)特に古いバージョン限定の時は必ず明記! 回答もチグハグになり回答者に2度
手間を食わせる可能性大
6)どういう時にどういう動作をさせたいのかを脳内にとどめずきちんと書く。
例:「自動ポップアップしたい」←どういう場合(マウスオーバー、クリック、
ボタン押し、select選択)に何(別窓、レイヤー、その他)が出るのか書け!
7)質問はまっとうな(他人に理解できる)日本語で。
前項の例に限らず、他人に理解できない質問文は煽られるだけで時間の無駄
1)ユーザ(閲覧者)に迷惑がかかる性悪スクリプトは回答されない。
例: 別窓開きまくり、閉じる/戻るのを妨害、全画面占有、etcは最悪。
答えさせようと「分からねえんだろ」と煽っても無駄(過去スレが証明)。
2)言葉でぐだぐだ書かずにソースを貼る、ただし要点を整理して。
そのまま貼って動かせると試してもらいやすい(ただし回答者に連結さすな!)
長い(1レスに入らない)場合はアップロードしてURIを貼る。
3)初心者という言葉は危険なので使わない方がよい。
初心者を言い訳に自力で調べない/考えない奴が最悪に嫌われる。
4)自分で調べたこと/試したこときちんと書く(調べもしない奴は最低)。
ただ「動きません」「エラーです」は何も情報がないため嫌われる。
エラーは「どの行で何のエラー」を書く(ブラウザをそのように設定すれ)。
ブラウザの設定すらできんヤシはFFxのJavaScriptコンソールを使え!!!
OS、ブラウザ、バージョン、うまく行かない条件を明記しエラー再現可能に。
5)特に古いバージョン限定の時は必ず明記! 回答もチグハグになり回答者に2度
手間を食わせる可能性大
6)どういう時にどういう動作をさせたいのかを脳内にとどめずきちんと書く。
例:「自動ポップアップしたい」←どういう場合(マウスオーバー、クリック、
ボタン押し、select選択)に何(別窓、レイヤー、その他)が出るのか書け!
7)質問はまっとうな(他人に理解できる)日本語で。
前項の例に限らず、他人に理解できない質問文は煽られるだけで時間の無駄
【FAQその2】
Q10. CSSで設定した背景色がe.style.backgroundColorで取得できないのですが…
A10. 取得には document.defaultView.getComputedStyle() を使う必要あり。
IEでは要素オブジェクトのプロパティcurrentStyleを使う。
Q11. 100*1.15の結果が114.999…998となってしまうのですが…
A11. コンピュータの実数計算は全て近似値だと思え。誤差が嫌なら整数で計算。
Q12. 任意のデータをサーバ(別鯖ではない)から取り寄せたいのですが…
A12. IE7/Gecko/Opera/Safariのnew XMLHttpRequest()、IEの
new ActiveXObject("Msxml2.XMLHTTP.6.0") (または"Msxml2.XMLHTTP.3.0")
を使えばできます。古いブラウザだと隠しフレームに読むなどのワザが必要。
Q13. setAttribute("class","foo")、setAttribute("onclick","bar()")が動きません…
A13. IEではそれは不可。「obj.className="foo"」「obj.onclick=bar」でどぞ。
複数の関数を呼びたいときは obj.onclick=function(){foo();bar();};
という風に無名関数を作りましょう。中に書かれたコードが実行されます。
Q14. タイマーやイベントハンドラに設定するコードにthisを含めたいのですが
「"...this..."」とか「function(){...this...}」ではうまく行きません。
A14. それらが実行されるときはthisは別のもの(window等)を指してしまってる。
「function(x){return function(){...x...};}(this)」のようにthisを別の変数に
束縛しその変数を使って。循環参照によるメモリリーク問題あり(この項記述検討中)
Q15. 文字列の置き換えをするときにコードを使いたい(Perlのs///e)のですが…
A15. string.replace(/.../,function(str,p1,p2,...,offset,s){...})としましょう。
正規表現にマッチした文字列がreturnで返された文字列に置き換えられます。
各引数はstrがマッチした部分文字列、p1,p2,...が1番目、2番目、…の()の中身、
offsetがマッチした位置、sが置き換え前の文字列全体になります。
Q10. CSSで設定した背景色がe.style.backgroundColorで取得できないのですが…
A10. 取得には document.defaultView.getComputedStyle() を使う必要あり。
IEでは要素オブジェクトのプロパティcurrentStyleを使う。
Q11. 100*1.15の結果が114.999…998となってしまうのですが…
A11. コンピュータの実数計算は全て近似値だと思え。誤差が嫌なら整数で計算。
Q12. 任意のデータをサーバ(別鯖ではない)から取り寄せたいのですが…
A12. IE7/Gecko/Opera/Safariのnew XMLHttpRequest()、IEの
new ActiveXObject("Msxml2.XMLHTTP.6.0") (または"Msxml2.XMLHTTP.3.0")
を使えばできます。古いブラウザだと隠しフレームに読むなどのワザが必要。
Q13. setAttribute("class","foo")、setAttribute("onclick","bar()")が動きません…
A13. IEではそれは不可。「obj.className="foo"」「obj.onclick=bar」でどぞ。
複数の関数を呼びたいときは obj.onclick=function(){foo();bar();};
という風に無名関数を作りましょう。中に書かれたコードが実行されます。
Q14. タイマーやイベントハンドラに設定するコードにthisを含めたいのですが
「"...this..."」とか「function(){...this...}」ではうまく行きません。
A14. それらが実行されるときはthisは別のもの(window等)を指してしまってる。
「function(x){return function(){...x...};}(this)」のようにthisを別の変数に
束縛しその変数を使って。循環参照によるメモリリーク問題あり(この項記述検討中)
Q15. 文字列の置き換えをするときにコードを使いたい(Perlのs///e)のですが…
A15. string.replace(/.../,function(str,p1,p2,...,offset,s){...})としましょう。
正規表現にマッチした文字列がreturnで返された文字列に置き換えられます。
各引数はstrがマッチした部分文字列、p1,p2,...が1番目、2番目、…の()の中身、
offsetがマッチした位置、sが置き換え前の文字列全体になります。
JavaScriptの勉強をしているのですが、本当にJavaScriptだけなのでHTMLとの連動の仕方がよくわかりません
<form>~</form>で値をJavaScriptに格納する事もできません
HTMLとJavascriptの連動について初心者でも1からよくわかるような説明が載ってるサイトってありますか?
<form>~</form>で値をJavaScriptに格納する事もできません
HTMLとJavascriptの連動について初心者でも1からよくわかるような説明が載ってるサイトってありますか?
>>6のリンク先でもながめてなよ
質問させてください。
作っているプログラムがうまく動かないので調べていたところ、変数の足し算がうまくいっていないみたいでした。
例えば
hensu1=3;
hensu2=5;
として
hensu3 = hensu1+hensu2
として、アラートでhensu3を表示させたところ
「8」になってほしかったのが「35」になっています。
どうしたら8にするようにできるでしょうか?変数定義の段階で間違っているのでしょうか?
作っているプログラムがうまく動かないので調べていたところ、変数の足し算がうまくいっていないみたいでした。
例えば
hensu1=3;
hensu2=5;
として
hensu3 = hensu1+hensu2
として、アラートでhensu3を表示させたところ
「8」になってほしかったのが「35」になっています。
どうしたら8にするようにできるでしょうか?変数定義の段階で間違っているのでしょうか?
hensu1="3"って感じでダブルクオテーションかシングルクオテーションで囲ってるんじゃないの?
String型(文字列)として扱われてるから3という文字列と5という文字列がくっついて35になってると予想される。
そのソース通りクオテーションがついてない場合int型(数値)になるので8になる。
そのソース実行したら8になるはずだが試したのかね?
String型(文字列)として扱われてるから3という文字列と5という文字列がくっついて35になってると予想される。
そのソース通りクオテーションがついてない場合int型(数値)になるので8になる。
そのソース実行したら8になるはずだが試したのかね?
>>10
そしたら今度はJavaScriptのDOMの操作についてやりゃいいと思う
そしたら今度はJavaScriptのDOMの操作についてやりゃいいと思う
初めてのプログラミングがjavascriptなんですが
使っていたメモリの解放?とか何かそういう特別なことをしないといけないんですか?
どういうときにどうするものなんですか?
まだ動くか動かないかといった目で見てわかることに必死な現状なんですが
メモリがどうのこうのってことも意識しておきたくて。
でも目に見えない(見る方法とかあるんですか?)からなんだか漠然としていて
使っていたメモリの解放?とか何かそういう特別なことをしないといけないんですか?
どういうときにどうするものなんですか?
まだ動くか動かないかといった目で見てわかることに必死な現状なんですが
メモリがどうのこうのってことも意識しておきたくて。
でも目に見えない(見る方法とかあるんですか?)からなんだか漠然としていて
ガベージコレクションって機能が勝手に解放してくれるから基本的に気にしないでいい。
メモリが一向に解放されないメモリリーク(バグで引き起こされる)に注意。
リークパターンはいくつかあるのでそれは勉強していくしかない。
メモリが一向に解放されないメモリリーク(バグで引き起こされる)に注意。
リークパターンはいくつかあるのでそれは勉強していくしかない。
お邪魔します、質問です。
<a href="hoge1.html" onclick="hoge(); return false;">リンク1</a><br>
<a href="hoge2.html" onclick="hoge(); return false;">リンク2</a><br>
<a href="hoge3.html" onclick="hoge(); return false;">リンク3</a><br>
こんなリンクがあるとして、クリックされた時に、
関数hogeに、対応するhref属性の値を拾わせたいと考えています。
例えば、「リンク1」がクリックされた場合は「hoge1.html」を、
「リンク2」がクリックされた場合は「hoge2.html」を、
ひとつの関数hogeで拾えるようにしたいという感じです。
が、関数hogeの中をどのように書けばよいのか分からず悩んでいます。
ググったら、thisやら、callee.caller?やらが引っかかったのですが、
少し自分には難しく、検索結果を真似してみてもうまくいきません。
という状況なのですが、どなたかアドバイスいただけると嬉しいです。
<a href="hoge1.html" onclick="hoge(); return false;">リンク1</a><br>
<a href="hoge2.html" onclick="hoge(); return false;">リンク2</a><br>
<a href="hoge3.html" onclick="hoge(); return false;">リンク3</a><br>
こんなリンクがあるとして、クリックされた時に、
関数hogeに、対応するhref属性の値を拾わせたいと考えています。
例えば、「リンク1」がクリックされた場合は「hoge1.html」を、
「リンク2」がクリックされた場合は「hoge2.html」を、
ひとつの関数hogeで拾えるようにしたいという感じです。
が、関数hogeの中をどのように書けばよいのか分からず悩んでいます。
ググったら、thisやら、callee.caller?やらが引っかかったのですが、
少し自分には難しく、検索結果を真似してみてもうまくいきません。
という状況なのですが、どなたかアドバイスいただけると嬉しいです。
しょーもない質問なんですが
function point(_nioi , _kao )
{
this.nioi = _nioi ;
this.kao = _kao ;
}
でコンストラクタのを生成
var ayaka = new point(kusai , busu );
でnewでpointオブジェクトを生成して、変数のayakaにpointオブジェクトの値を入れて
document.write( ayaka.nioi );
でdocument.writeで書き出して、変数ayakaのnioiプロパティを引き出してkusaiを引き出すのですが
このayakaはオブジェクトなのでしょうか?変数なのでしょうか?
オブジェクト名 . プロパティ名で属性表示という風に習ったのですがソコがどうも納得いかなくて
それとコンストラクタの生成じゃないとかpointはオブジェクトじゃないとかあったらお願いします
function point(_nioi , _kao )
{
this.nioi = _nioi ;
this.kao = _kao ;
}
でコンストラクタのを生成
var ayaka = new point(kusai , busu );
でnewでpointオブジェクトを生成して、変数のayakaにpointオブジェクトの値を入れて
document.write( ayaka.nioi );
でdocument.writeで書き出して、変数ayakaのnioiプロパティを引き出してkusaiを引き出すのですが
このayakaはオブジェクトなのでしょうか?変数なのでしょうか?
オブジェクト名 . プロパティ名で属性表示という風に習ったのですがソコがどうも納得いかなくて
それとコンストラクタの生成じゃないとかpointはオブジェクトじゃないとかあったらお願いします
いろいろなサイトを参考にして、外部htmlのソース内を検索するスクリプトを作ってみた(ほぼコピペ)のですが、
対象とするhtmlのソースが動的に変化するため、setintervalで何秒か置きに取得したいと思っています。
概要は、
<html>
<head>
<script type="text/javascript">
function A(){}
function B(){}//Aから呼び出し
function C(){}//Aから呼び出し
</script>
</head>
<body onload="A();setInterval(A,10000);">//10秒置きに対象htmlのソース内を検索したい
</body>
</html>
となっています。
一度は実行されるのですが、2度目以降が実行されていないようです。
どこが間違っているのか教えてください。
実際のfunctionについては次で。
対象とするhtmlのソースが動的に変化するため、setintervalで何秒か置きに取得したいと思っています。
概要は、
<html>
<head>
<script type="text/javascript">
function A(){}
function B(){}//Aから呼び出し
function C(){}//Aから呼び出し
</script>
</head>
<body onload="A();setInterval(A,10000);">//10秒置きに対象htmlのソース内を検索したい
</body>
</html>
となっています。
一度は実行されるのですが、2度目以降が実行されていないようです。
どこが間違っているのか教えてください。
実際のfunctionについては次で。
var request;
function requestsorce(){
var url = "http://www.xxx.html";
request=createhttprequest();
request.open("GET",url,true);
request.onreadystatechange=sorceget;
request.send(null);
}
function createhttprequest(){
var request=null;
if("XMLHttpRequest" in window){
request= new XMLHttpRequest();
}else if("ActiveXObject" in window){
try{
request=new ActiveXobject("Msxml2.XMLHTTP");
}catch(e){
try{
request=new ActiveXObject("Microsoft.XMLHTTP");
}catch(e){
}
}
}
return request;
}
function sorceget(){
if (request.readyState == 4 && request.status == 200){
var str = request.responseText;
var spl = "abc"
var n = str.split(spl).length - 1;
document.write("abcは、" + n + "件です。");
}
}
function requestsorce(){
var url = "http://www.xxx.html";
request=createhttprequest();
request.open("GET",url,true);
request.onreadystatechange=sorceget;
request.send(null);
}
function createhttprequest(){
var request=null;
if("XMLHttpRequest" in window){
request= new XMLHttpRequest();
}else if("ActiveXObject" in window){
try{
request=new ActiveXobject("Msxml2.XMLHTTP");
}catch(e){
try{
request=new ActiveXObject("Microsoft.XMLHTTP");
}catch(e){
}
}
}
return request;
}
function sorceget(){
if (request.readyState == 4 && request.status == 200){
var str = request.responseText;
var spl = "abc"
var n = str.split(spl).length - 1;
document.write("abcは、" + n + "件です。");
}
}
最初って参考書によってオブジェクトって書いてあったりインスタンスって書いてあるからね
ayakaはインスタンスオブジェクト
どっちでもいいんだけど二通りいてあったらオブジェクトでありインスタンスでもあるって覚えりゃいいかも
・・・間違って書いてるサイトもあるけど
ayakaはインスタンスオブジェクト
どっちでもいいんだけど二通りいてあったらオブジェクトでありインスタンスでもあるって覚えりゃいいかも
・・・間違って書いてるサイトもあるけど
今どきの初心者ってそもそもdocument#write()とか知らないんじゃないか
>>34
な、なにそれ??
な、なにそれ??
#ってどういう意味で使うんだっけ。クラスに対するインスタンスメソッド?
あのースレ立て人ですけど、今のうちにテンプレ論議したいな
と思っています。前スレ末尾のを探して来て貼ろうかと思った
のだけど、あれ書いた人いるならもっかい提案してくれた方が
いいのかなと思って。その他テンプレのここを直そうとかあったら
ぜひ今提案しませう。
と思っています。前スレ末尾のを探して来て貼ろうかと思った
のだけど、あれ書いた人いるならもっかい提案してくれた方が
いいのかなと思って。その他テンプレのここを直そうとかあったら
ぜひ今提案しませう。
Q16. input type="file"の値を設定(参照)できないのですが…
A16. セキュリティ制約のため設定は絶対に不可。参照はブラウザにより不可。
(確認した限り)FirefoxとChromeは[DOM Element].fileで参照できることを書いてあげてもいい気がする
http://developer.mozilla.org/en/DOM/File
http://dev.w3.org/2006/webapi/FileAPI/
A16. セキュリティ制約のため設定は絶対に不可。参照はブラウザにより不可。
(確認した限り)FirefoxとChromeは[DOM Element].fileで参照できることを書いてあげてもいい気がする
http://developer.mozilla.org/en/DOM/File
http://dev.w3.org/2006/webapi/FileAPI/
それなら「ブラウザによりFileAPIで参照可能」って感じではどうだろう
何かしらのキーワードはあったほうが探しやすいし・・・
何かしらのキーワードはあったほうが探しやすいし・・・
File API仕様自体が安定してない
メソッド名すらちょくちょく変わる
やりたい奴はやればいいがテンプレとしては時期尚早
HTML5関連は実装主導と言うと聞こえは良いが
その実は自分で仕様と実装を比較対照できるレベルでないとやってられんぞ
そんな奴ならTRのリストをやれば自分で勝手にやるだろ
メソッド名すらちょくちょく変わる
やりたい奴はやればいいがテンプレとしては時期尚早
HTML5関連は実装主導と言うと聞こえは良いが
その実は自分で仕様と実装を比較対照できるレベルでないとやってられんぞ
そんな奴ならTRのリストをやれば自分で勝手にやるだろ
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
みんなの評価 : 類似してるかもしれないスレッド
- + JavaScript の質問用スレッド vol.80 + (1001) - [97%] - 2010/11/9 2:17
- + JavaScript の質問用スレッド vol.82 + (1001) - [97%] - 2011/1/19 7:54
- + JavaScript の質問用スレッド vol.83 + (1001) - [97%] - 2011/2/24 8:02
- + JavaScript の質問用スレッド vol.84 + (1001) - [97%] - 2011/3/30 7:32
- + JavaScript の質問用スレッド vol.85 + (1001) - [97%] - 2011/4/25 21:32
- + JavaScript の質問用スレッド vol.86 + (1001) - [97%] - 2011/5/27 21:50
- + JavaScript の質問用スレッド vol.87 + (1001) - [97%] - 2011/6/21 6:33
- + JavaScript の質問用スレッド vol.88 + (1001) - [97%] - 2011/7/20 7:03
- + JavaScript の質問用スレッド vol.89 + (1001) - [97%] - 2011/9/4 4:17
- + JavaScript の質問用スレッド vol.141 + (881) - [95%] - 2021/4/19 9:00
- + JavaScript の質問用スレッド vol.115 + (1001) - [95%] - 2014/5/29 16:16
- + JavaScript の質問用スレッド vol.121 + (1001) - [95%] - 2022/11/29 16:30
- + JavaScript の質問用スレッド vol.119 + (1002) - [95%] - 2014/10/3 15:30
- + JavaScript の質問用スレッド vol.118 + (1002) - [95%] - 2014/8/29 22:30
- + JavaScript の質問用スレッド vol.117 + (1009) - [95%] - 2014/8/5 3:30
- + JavaScript の質問用スレッド vol.116 + (1002) - [95%] - 2014/7/1 0:45
- + JavaScript の質問用スレッド vol.110 + (1001) - [95%] - 2013/10/13 14:01
トップメニューへ / →のくす牧場書庫について