JavaScript

このエントリーをはてなブックマークに追加
952デフォルトの名無しさん:2009/08/24(月) 14:11:56


<body>
<h1>背景色の変更</h1>
<button onClick = "document.bgColor = 'red' " >赤 </button>
<button onClick = "document.bgColor = 'blue' " >青 </button>
</body>

じゃダメ?
953デフォルトの名無しさん:2009/08/24(月) 17:35:02
>>952
ボタンを押したタイミングがいいってことじゃね?

>>951
こういうのとか。引数でform渡した方が使い道ありそうな気もするけど。
function display(){
  var radio = document.color.iro;
  for (var i=0,l=radio.length; i<l; ++i) {
    if (radio[i].checked) {
      return document.body.style.backgroundColor = radio[i].value;
    }
  }
  alert('選択されていません');
}
954デフォルトの名無しさん:2009/08/24(月) 22:43:50
こういうコード見るとdocumentだけDに代入したくなるんだけどこれってキモい?
955デフォルトの名無しさん:2009/08/24(月) 23:08:39
キモくはないよ。
アリだと思う。
956デフォルトの名無しさん:2009/08/24(月) 23:41:08
953さんのコードで言うと
var radio = (D=document).color.iro;
とかやっちゃうんだけど、アリかあ。良かった。
957デフォルトの名無しさん:2009/08/24(月) 23:57:31
>>956
グローバル変数作っちゃうのは気持ち悪い
958デフォルトの名無しさん:2009/08/25(火) 03:48:42
with
959デフォルトの名無しさん:2009/08/25(火) 04:45:55
javascriptで複数のHTMLのクラス属性の内容を一気に書き換える方法でオススメの方法はありますか?
JSフレームワーク等を使ってもかまいません、というかどちらかというと希望します。
可能ならばクラス change を利用して、簡潔に書き換える方法を知りたいと思っています。
しかし、クラスを指定してid一覧を得るような方法も分からないですし、それでもいいと思ってます。

<div id="one" class="change">いち</div>
<div id="two" class="change">にぃ</div>
<div id="three" class="change">さん</div>
<div id="four" class="change">よん</div>
960デフォルトの名無しさん:2009/08/25(火) 11:09:41
>>959
日本語難しいよ。同じclassの中身を変えればいいの?
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
<script type="text/javascript">
$(function(){
  $('div.change').each(function(i, elem){
    var $elem = $(elem);
    $elem.text(i + " : " + $elem.attr('id'));
  });
});
</script>
961959:2009/08/25(火) 14:29:00
>>960
分かりにくい説明ですいません。
回答して下さった内容で大丈夫だと思います。
ありがとうございます。

ちょっと解読しつつ活用してみます。
962デフォルトの名無しさん:2009/08/25(火) 15:29:49
ここで解答してる人って,頭良いのにどうして働かない?
963デフォルトの名無しさん:2009/08/25(火) 15:47:46
仕事ができるので、
仕事中の2ちゃんねるも大目に見られてる。
964デフォルトの名無しさん:2009/08/25(火) 23:16:15
俺は裁量労働制だから、週の半分ぐらいは自宅作業。
でも、出社したほうが集中できるのは確かだな。
965デフォルトの名無しさん:2009/08/25(火) 23:26:43
俺は昼遅くくらいから週5で常駐してる
家にいたら嫁に雑用頼まれて邪魔されるから仕事にならん
たまたま休憩がてら2ch見てた所をのぞき込んで仕事してない駄目親父ニート扱いしやがるし
966デフォルトの名無しさん:2009/08/27(木) 09:57:33
DOMって覚えなきゃダメ?
967デフォルトの名無しさん:2009/08/27(木) 12:21:32
覚えてる奴なんていないよ。
968デフォルトの名無しさん:2009/08/27(木) 13:07:51
調べ方を覚えないと駄目。
969デフォルトの名無しさん:2009/08/27(木) 16:16:07
>>967-968
安心したw
今、「独習JavaScript」て本で勉強してるんだけど、詳しすぎるw
970デフォルトの名無しさん:2009/08/28(金) 02:09:48
「DOMを覚える」がどういうことかわからんが、DOM操作の基本は知っておいたほうがいいな。
971デフォルトの名無しさん:2009/09/01(火) 09:52:03
3台並べてジェットストリームアタックかます
972教えてください ◆lo0Ni729yM :2009/09/01(火) 10:11:03
<html>
<head>
<title>rei4-1.html</title>
<script type="text/javascript">
function img_change1() { document.images["annai"].src="annai-1.gif"; }
function img_change2() { document.images["annai"].src="annai-2.gif"; }
</script>
</head>
<body>
<a href="annai.htm" onMouseOver="img_change2()" onMouseOut="img_change1()">
<img src ="annai-1.gif" border="0" namae="annai"></a>
</body>
</html>
973教えてください ◆lo0Ni729yM :2009/09/01(火) 10:13:44
>>972
namaeに"annai"なのだから、a href="annai.htm"ではなくて、a href="annai"ではないのか?
と思って、やってみましたが、どちらにしてもロールオーバーしません。
他に原因があるのでしょうか?
974デフォルトの名無しさん:2009/09/01(火) 10:28:24
nameをnamaeに翻訳すんなw
975教えてください ◆lo0Ni729yM :2009/09/01(火) 10:33:34
>>974
できました。どうもありがとうございます。
あと、インターネットで見つけたのですが、

<html>
<head>
<title>rei4-1html</title>
<script type="text/JavaScript">
<!--
var pic = new Array();
pic[0] = new Image();
pic[1] = new Image();
pic[0].src = "annai-1.gif";
pic[1].src = "annai-2.gif";
function setRollOverImg(index, obj){
obj.src = pic[index].src;
}
//-->
</script>
</head>
<body>
<img src="annai-1.gif" onMouseOver="setRollOverImg(0, this)" onMouseOut="setRollOverImg(1, this)">
</body>
</html>

と、どちらが良いプログラムなのでしょうか?
976デフォルトの名無しさん:2009/09/01(火) 11:02:19
どちらも微妙、CSS使え
977デフォルトの名無しさん:2009/09/01(火) 21:54:58
JavaScriptは一番簡単かつ自由にプログラムを上級者なら書けるが
初級者がこれを上級者になる為の訓練として使っても目的を
達することは期待できないだろう。これはスクリプト言語全般に
言えるのでは。
978デフォルトの名無しさん:2009/09/01(火) 22:59:02
>>977
JavaScrpt をどんな言語に置き換えても成り立つし、スクリプト言語
じゃなくても同じことが言えるだろ?
JavaScript は C の皮かぶった lisp って話も聞くけど、lisp は
伝統的にはコンパイラベースの言語だしな…
979デフォルトの名無しさん:2009/09/02(水) 01:20:19
>>978
lisp は マッカーシーの時代から動的スコープを持つわけだが
980デフォルトの名無しさん:2009/09/02(水) 08:42:54
>>978
> JavaScript は C の皮かぶった lisp って話も聞くけど、

LISPじゃなくて、Schemeの間違いでしょ。
もともと、Brendan Eichはブラウザ上でSchemeを動かすために、
Netscapeに雇われたんだよ。
http://weblogs.mozillazine.org/roadmap/archives/2008/04/popularity.html#more
結局、Cの皮をかぶるプロトライプ言語になったけども。

>>979
最初はインタープリタだけだよな。
981デフォルトの名無しさん:2009/09/02(水) 17:36:18
どうにも困っとります。(´・ω・`)

Javascriptで10桁×10桁の演算せんといかんくなったですが、32bitに収まらない事に気付いた...
20桁扱う整数演算ってJavaScriptでどうやりゃ良いんでしょうか?orz
982デフォルトの名無しさん:2009/09/02(水) 17:39:25
10桁ずつ計算すりゃいいんじゃね
983デフォルトの名無しさん:2009/09/02(水) 17:42:23
あ〜...やっぱ自分で作らにゃ無いんですね。(´・ω・`)

32bitに収まるようにっつぅことは...4桁ずつに区切って計算して...って事ですね...?
984デフォルトの名無しさん:2009/09/02(水) 18:01:59
整数8桁かける整数8桁なら、浮動小数点数で計算しても、誤差は発生しないんだけどね。
985デフォルトの名無しさん:2009/09/02(水) 18:09:19
そういや、実数部分は32bitじゃなかったんですよね。
忘れてました...orz

とりあえず、自力で作ってみます。

ヒントだけでもいただけて助かりました。(*´ω`)
986デフォルトの名無しさん:2009/09/02(水) 18:15:06
「JavaScript bigint」でググると幸せになれるかも。

987デフォルトの名無しさん:2009/09/02(水) 18:16:44
ttp://deztec.jp/x/05/faireal/25-index.html#d20530
斜め読みしかしてないけどそれっぽいライブラリがあった
988デフォルトの名無しさん:2009/09/02(水) 18:22:12
bigintも調べたらhitしたんですが、ライブラリのdownloadができなくて、あきらめたんです。(´・ω・`)
989デフォルトの名無しさん:2009/09/02(水) 18:29:33
990デフォルトの名無しさん:2009/09/02(水) 18:31:39
こんなのもあるみたい。
BigDecimal support for JavaScript
ttp://stz-ida.de/html/oss/js_bigdecimal.html.en
991デフォルトの名無しさん:2009/09/02(水) 18:47:36
>>989
あれ?ありがとうございます。
探し方が下手だっただけみたいですね...orz

>>990
ありがとうございます。
こちらも参考にさせていただきます。

ホントに有益な情報ありがとうございます。
992デフォルトの名無しさん:2009/09/02(水) 20:54:13
質問です。
<textarea>にXMLを入力して、それをサーバに送らずに
JavaScriptでDOMでアクセスしたり、DOMで作ったXMLを
<textarea>に書き出したりしたいのですけど、
できますでしょうか。
993デフォルトの名無しさん:2009/09/02(水) 21:05:39
できるよ。
994暇つぶし:2009/09/03(木) 03:57:38
>>76
一番簡単なの
if 金曜日{
if day>14}
echo$unko;
}}else{
}
995992:2009/09/04(金) 00:54:05
>>993
なるほど、ありがとうございます。
ついでに、やり方もさくっと教えて頂ければ、なお嬉しい。
996デフォルトの名無しさん:2009/09/04(金) 05:07:24
KIAI
997デフォルトの名無しさん:2009/09/04(金) 09:31:46
998デフォルトの名無しさん:2009/09/04(金) 09:41:07
>>995
余白が足りない。
次スレまで待て。
999デフォルトの名無しさん:2009/09/04(金) 14:50:10
>>992
そもそもブラウザ上のJavaScriptはWeb製作板の質問スレへ。
1000デフォルトの名無しさん:2009/09/04(金) 14:52:34
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。