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

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

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

    location.hashがクロスブラウザで動かすにはハッシュをencodeURIComponentしてれば大丈夫でしょうか?

    103 = :

    >>99
    ! は明示的な型変換だからじゃないか

    104 = :

    >>101
    いったんdecodeしてからもっかいencodeしる

    105 = :

    os/ブラウザ WinXpSP3 Chrome11
    HTMLTableRowElement等で高さの変更はできないのでしょうか?
    表の中の特定行だけ高さを変えたいのですがググっても分かりませんでした。
    <table onclick="this.childNodes[0].childNodes[0].style.height=0"…みたいにしたいです。

    108 = :

    ハッシュに#が含まれてたらどうするの?

    109 = :

    >>105
    event.currentTarget.tBodies[0].rows[0].style.height

    110 = :

    >>106
    論点はそこじゃない
    ===での型厳密比較を推奨するのなら
    !""=>true, !0=>true, !NaN=>true, !undefined=>true, !null=>true
    ↑のような型変換規則を暗記しなきゃいけないブール値変換そのものにも
    注意を出さないと一貫性に欠ける、て話じゃないの

    俺もこれぐらい普通に暗記しろとは思うよ

    111 = :

    >>107
    それは前段階で多重エスケープされているというマヌケな仕様のせいなので無視
    サニタイズ脳の被害者に多い

    >>108
    別に何てことないけど

    112 = :

    >>110
    だからその理屈はおかしいって話じゃないの
    ! で Boolean 型に型変換されるのは明らか
    これが認められないなら if 文でさえ使えないよ?

    114 = :

    >>112
    その通り、同意するよ
    だから俺もJSLintのアレは好きじゃないんだ

    116 = :

    ごめんPHPと混同してた
    splitじゃあかんね

    117 = :

    >>113
    http://hoge.example/#foo#piyo は RFC3986 (3.5 Fragment) に違反しています。http://hoge.example/#ほげ も違反。
    ただ、多くのブラウザはこれらを許容する実装ですね。初めの # 以降をURLハッシュと認識します。

    119 = :

    >>117
    じゃあ正しいURIならsplitでも問題ないのか
    たびたびすまん

    120 = :

    このスレ的にはどうやってハッシュを取るのが一番なのですか?

    122 = :

    >>109
    レスありがとうございます。本当は行を隠そうと思ったのですが両方動きました。
    以下のようなケースではstyle.heightの部分は0には設定できないのは仕様でしょうか?
    <table border=1 onclick="event.currentTarget.tBodies[0].rows[0].style.height=100"><tr><td>a</td><td>b</td></tr></table>
    <table border=1 onclick="this.childNodes[0].childNodes[0].style.height=100"><tr><td>a</td><td>b</td></tr></table>

    124 = :

    >>122
    そのコードの100を0に替えたら普通に設定されたけど
    見た目の話をしてる? ならスレチ
    スレチだけど単位は0以外のときは必須だよ

    XHTMLだとtbody要素が無かったりするから、Element.rows[0].style.heightを使った方がいいかもしれない

    125 = :

    >>122
    単位を省略してはいけない。<tbody> も省略しない方がいい。
    http://jsfiddle.net/KxAHc/

    126 = :

    >>124
    スレチなのに教えてくださり有難うございます。
    見た目0にならないのは違うかもしれないけどHTMLの仕様と思っておきます。失礼しました。

    127 = :

    >>119
    確かに RFC3986 規定通りの URI なら location.href.split('#')[1] でハッシュがとれるので URI を管理できるのならそれでもいいかもですね。
    実際には規定に準拠した URI ばかりではないです。不特定の URI を相手取るなら # 以降のすべての文字をハッシュ値とする実装が妥当だと思います。

    128 = :

    >>125
    申し訳ないです。。ググってみるとローカルのファイルでもアップロードできるんですね。
    気をつけます。今度こそ失礼・・

    130 = :

    <script language="JavaScript">
    var h=$PL[70];var timerID;
    function () {
    var dt = new Date();
    dt = new Date(dt.getFullYear(), dt.getMonth(), dt.getDate()+1);
    h = $DATE + dt;
    }
    </script>
    $PL[70]というPerlで定められた変数の中に1日が終わるまでの秒数を代入したいです
    こんな感じで作ってみたのですが動作しません;;
    どこをなおせばいいでしょうか?

    131 = :

    JavaScriptはサーバサイドじゃないぞ。ページがブラウザとかに読み込まれないと動かない。
    Perlでその数値を使いたいならPerl側で計算しないと。

    133 = :

    1度クリックすると翌日までクリックできないボタンを作ろうとしてます
    それで、FORMで値を受け取ったときに同時に$PL[70]の中に12時になるまでの
    残り秒数を代入したいです
    ブラウザには読み込まれるので計算してくれるとは思うのですが・・・

    134 = :

    クッキーでいいんじゃね?
    どうせそんな作りこんでも対策なんて完璧な不可能なんだし

    135 = :

    日本語がおかしかったが察してくれ・・・

    136 = :

    var hoge = 'けちょんてちょん';
    "フリーザ、貴様は ' このベジータ様が hoge に ' 倒す!"
    とここにhogeを入れたいのですが、どーにも上手くいきません

    どのように記述したらよいのでしょうか?

    137 = :

    "フリーザ、貴様は ' このベジータ様が hoge に ' 倒す!"
    表記→フリーザ、貴様は ' このベジータ様がhogeに ' 倒す!

    "フリーザ、貴様は ' このベジータ様が "+hoge+" に ' 倒す!"
    表記→フリーザ、貴様は ' このベジーた様がけちょんけちょんに ' 倒す!

    138 = :

    ありがとうございます
    解決しました、感謝ですー

    139 = :

    d

    140 = :

    >>130
    大方cgiゲームってとこだろ
    var timeID:
    がいらない
    それで動く

    142 = :

    String.prototype.test = function() {
    alert(this);
    };

    function $(str) {
    return str;
    }

    $("aaa").test();

    143 = :

    String.prototype.test

    Stringが型
    prototypeはおまじない
    testがメソッド

    function $(str)

    $が値を受け取る為の専用メソッド
    っていう風に認識してよいでしょうか?

    144 = :

    $("aaa").test().test().test().test();
    こんな風に続けていきたいなら違った回答になるが。

    $ = function (str) { return this;}
    $.prototype.test = function(){
    return this;
    };

    145 = :

    >String.prototype.test
    Stringオブジェクトのプロトタイプベースでの拡張方法
    クラスベース(Javaとか)はStringをスーパークラスとして継承するが
    プロトタイプベースはこのように後から取ってくっつけたような記法が可能

    >function $(str)
    多くのフレームワークでは
    var $ = document.getElementById;
    という感じにdocument.getElementByIdのショートカットになっている

    146 = :

    文字通りの意味でなら

    var $ = function(s) {
    return { str : s, test : function(){ alert(this.str); } };
    };

    $("aaa").test();

    これでも要求通りに動く。ただし汎用性はあまりない。

    JavaScriptにはメソッドの実装方法が複数あるけど、
    ここで実例挙げて聞いても直接の参考にはならんと思うよ。
    ここで聞いて参考になるのはブラウザ仕様とかだね。
    JavaScriptの基本的な組み方は自分で勉強するしか。

    147 :

    循環参照ってわざとやる場合、
    具体的にどんな使い道がありますか?
    ある程度ggりましたが分かりません
    教えてください

    148 = :

    ・単純な例
     時計の秒針が1秒ずつずれている画像60枚があって、
     1秒ごとに次の画像を表示することで、秒針が回っているように見せるとする。
     データの構造が、0秒の画像の次は1秒の画像、1の次は2、2の次は3を指していて、
     最後の59の次が0を指すようになっていれば、
     プログラム側では「1秒ごとに"次"を表示する」で済む。

    ・DOMとかでよくある例
     データ構造に親子関係がある場合、親は当然、自分の子供に対する参照を持つから、
     親を対象にデータをいじってる時に子供を操作するのは簡単。
     逆に、子供をいじっていて、その子供の親を操作したくなった時に、
     子供が親への参照を持っていないと、親がどれなのか、
     プログラマが保存しとくなり毎回調べるなりする必要がある。
     子供が親に対する参照を持っていれば、子供から親がすぐ分かる。

    149 = :

    そういう意味か
    スクリプトエンジンとDOMエンジンの循環参照のことだと思ってた


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

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


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