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

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

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

    401 = :

    >>400
    なるほど。勉強になったわ

    402 = :

    str=str.replace(/./g,function(s){return(map[s]||(map[s]=0)||map[s]++)?'':s;})
    str=str.replace(/./g,function(s){return(map[s]||void(map[s]=1))?'':s;});

    ちょっと縮まった、てかなんでgolfにw

    403 = :

    <script>
    function Rec(w,h){
    this.width = w;
    this.height = h;
    }
    function RRec(x,y,w,h){
    Rec.call(this,w,h);
    this.x = x;
    this.y = y;
    }
    RRec(1,2,3,4);
    document.write(RRec.width);
    </script>

    RecのプロパティをRRecに継承したいんだけど、
    callメソッドってこういう使い方じゃダメなの?
    実行結果はundefinedだった


    404 = :

    function RRec(x,y,w,h){
    alert(this);
    }
    RRec(1,2,3,4);

    function RRec(x,y,w,h){
    Rec.call(this,w,h);
    this.x = x;
    this.y = y;
    }
    var rr = new RRec(1,2,3,4);
    document.write(rr.width);

    405 = :

    >>404
    オブジェクト作るの忘れてたわ
    ありがとう

    406 = :

    >>402
    をを! voidか、なるほどこういう時に使うんだねー。
    str=str.replace(/./g,function(s){return(map[s]||(map[s]=0)||map[s]++)?'':s;})
    str=str.replace(/./g,function(s){return(map[s]||void(map[s]=1))?'':s;});
    str=str.replace(/./g,function(s){return(map[s]||!(map[s]=1))?'':s;})

    407 = :

    ああ否定演算子のほうがよっぽど素直だw

    409 = :

    極限まで短くしてって質問じゃないだろw
    トリッキーなコードでわけがわからん

    410 = :

    arr=['a', 'b', 'c', 'd', 'e', 'f'];
    とあるときにarr[5]='g'というように格納すると同時?というか
    arrの中を左にずらしてarr=['b', 'c', d', 'e', 'f', 'g'];
    という風にしたいので、arr[0]=arr[1],arr[1]=arr[2]・・・・arr[5]='g'
    のような感じにしてみました。ですが効率が悪い気がします。
    なにかよい方法ありませんでしょうか
    よろしくお願いします。

    411 = :

    とおもったらshift、pushというものがありました
    お騒がせしました

    412 = :

    質問です
    一番手前の位置にページ全体を覆うように透明のオブジェクトを配置し、
    なおかつマウスでのリンクやフォームの操作に支障が無いようにする事はJavaScriptで可能ですか?

    何て説明したらいいのか分かりませんが、オブジェクトの非オブジェクト化というか
    イベントを受け取らず止めもしない、単なる視覚効果として扱いたいのです。
    上手く説明できなくてすいません。

    413 = :

    いや、上手く説明してくれよ。具体的に何したいんだかさっぱりわからん。

    414 = :

    >>412
    それだけだとページ全体を花柄の枠とかで飾りたいだけのようにも見て取れる
    もっとちゃんと説明汁

    415 :

    ライトボックスの黒カーテンみたいなものを置きつつ、
    下層のオブジェクトは普通にマウスで触れるようにしたい、
    ということかと。

    418 = :

    >>417
    そりゃ視覚もイベントも手前だろ

    419 = :

    >>413
    例えば、αチャンネル付きの薄い霧の画像をページ全体を覆うdivのbackgroundに指定して
    スクロールさせたり透明度を微妙に変化させて雰囲気を出したり、
    ふわっとHTML上のランダムな場所に薄くメッセージを表示させてすぐに消すような演出をしたり、
    大きな桜の花びらや雪のオブジェクトを降らせたり、マウスストーカー系のスクリプトのときに、
    オブジェクトがリンクやボタンに被っても操作性に影響が無いようにする方法があれば知りたかったのです。

    >>414
    そのようなことです。

    >>415,416
    理解していただいてありがとうございます。
    現状はJavaScriptでは不可能と言うことでよろしいのでしょうか?
    Flashは分かりませんが、Flashを学び、サイト全体を作り直す方が簡単なのでしょうか?

    420 = :

    >>419
    Flashで作り直すほうが、というかjavascriptじゃ無理

    421 = :

    javascriptで出来ないわけでは無いが複雑なコードになるだろうactionscriptでやれば楽

    422 = :

    jsだけでもできそうがけどなかなかハードな仕様だな見た目つくりにしては。
    flashの方がいいんじゃね?action scriptとかどっかに落ちてそうだし。

    423 = :

    単に色フィルタかけたいだけならオブジェクト全部色変化させて一見スクリーンかかってる様に
    見せる手はあるけどな。グラデーションだとキツいが。

    424 = :

    jQueryでも限度がある。

    425 = :

    全部canvasでやれば自由自在に・・

    427 = :

    それはひどい

    429 = :

    配列の中を全部削除したいのですが、
    arr.length分forで、popもしくはshiftする
    以外になにかよい手段があれば教えてください

    430 = :

    Canvasを筆頭に他要素が力つけて
    flashいらねってなったら、そりゃいろいろと困るもんな。

    431 = :

    >>429
    arr.length = 0;

    432 = :

    >>431
    ありがとうございました

    435 = :

    そうですか

    436 = :

    a=['x', 'y', [['c','d'], ['e','f']] ];
    のときに、a[2]の配列の最後に['g','h']を格納しようと、
    a[2].push(['g','h']);
    としたのですが無理でした。どうすればよいでしょうかよろしくおねがいします。

    437 = :

    すいません勘違いでした、
    できました。

    438 = :

    また質問させていただきます
    配列の中に同じ値があるかを検索したいのですが、
    a=[['a','b'], ['c','d'], ['e','f']];
    とあるときに
    a.indexOf(['c','d']);
    で一致したり、
    a.indexOf(['g','h']);
    で一致しなかったり、というようなことをやりたいのですが
    上記ではどれもindexOfが-1を返してしまいます。
    [○,△]のペアで一致する検索をしたいのですが
    うまくいきません、どうすればいいでしょうかよろしくおねがいします。

    439 = :

    久しぶりにスレッドを覗いたら>>301の解答が出ていました。
    遅くなりましたが報告させていただきます。
    >>342
    さんを試したら成功しました。
    >>351
    さんの指摘を受けて
    function formcheck(form) {
    var n = form.sdate.length;
    if (form.sdate.checked) {
    return true;
    }
    for (var i = 0; i < n; i++) {
    if (form.sdate[i].checked) {
    return true;
    }
    }
    alert("商品が選択されていません。");
    return false;
    }
    と、成りました。
    協力いただいた方々ありがとうございました。

    440 = :

    >>438
    まずArray#indexOf()はECMA-262の標準には含まれていないので、
    ブラウザによっては動かないかも。そして、indexOf()は内部で
    ===を使って等しいかどうかを調べるらしいので、配列の「内容が」
    等しいかどうかを調べるのにはどのみち使えない。結局、自分で
    ループしながら配列を検索するしかないと思われ。

    442 = :

    >>440
    ありがとうございます。なるほど、indexOf()は使わないほうがいいみたいですね。

    一応自分なりにかいてみました。
    fpは次のような配列になっています、
    fp=[
          [ 8,      //←dx
            [4,2,5]    //←dy
            ],
          [ 5,
            [10,21]
            ]
        ];
    で、fp[0][0]やfp[1][0]がdx、
    fp[0][1]やfp[1][1]がdyというような関係です。
    説明しにくいので
    (dx,dy)=(11,3)、(8,3)、(5,10)が与えられたとき、fpがどのように変化するかを下に書きます
    fp=[
          [ 8,
            [4,2,5,3]
            ],
          [ 5,
            [10,21]
            ],
        [ 11,
           [3]
           ]
        ];
    です。(11,3)はどれも重複しないので新たにfpの最後に加えます。
    (8,3)はまずdxがfp[0][0]に重複後、fp[0][1]の最後にdyを追加します。
    (5,10)はまずdxがfp[1][0]に重複後、dyもfp[1][1][0]に重複するので何もしません。
    こういう検索をするために次のコードを書いてみました。つづく

    443 = :

    fp=[[8,[4,2,5]],[5,[10,21]],];
    var a=function(dx,dy){
      for(var i=0;i<fp.length;i++){
        if(fp[i][0]==dx){
          for(var j=0;j<fp[i][1].length;j++){
            if(fp[i][1][j]!=dy){
              if(j==fp[i][1].length-1){
                fp[i][1].push(dy);
              }
            }else{break;}
          }
          break;
        }else{
          if(i==fp.length-1){
            fp.push([dx]);
            fp[i+1].push([dy]);
          }
        }
      }
    }
    var t=function(){
      var tes=[];
      for(var i=0;i<fp.length;i++){
        tes.push(fp[i][0]+'<>'+fp[i][1]+'\n');
      }
    return tes;
    }
    a(11,3);alert(t().join());

    今のところはこれで思ったとおりの検索ができるのですが、自分の書いたものだと、無駄なものがあったり間違っていたり、別の良い方法があるような気がしてなりません。
    ちなみに、そもそもこのdx,dyは、onmousemoveしている間、整数のdx,dyを取得し続け、その都度a(dx,dy)を実行するような感じです。どうかアドバイスよろしくお願いします。

    445 = :

    0は正じゃないけどね。揚げ足か

    446 = :

    0には正負があるけどね。揚げ足か

    448 = :

    0に正負があるとかやばくね?話逸れてるけど

    450 :

    自己解決しました


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

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


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