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

    私的良スレ書庫

    不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
    ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

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

    JavaScript スレッド一覧へ / JavaScript とは? / 携帯版 / dat(gz)で取得 / トップメニュー
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    レスフィルター : (試験中)
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
    901 : Name_Not - 2011/08/31(水) 00:43:46.95 ID:??? (+69,+29,-14)
    >>900
    おっとjQueryの悪口はそこまでだ
    902 : Name_Not - 2011/08/31(水) 01:50:46.85 ID:??? (+4,-30,-115)
    >>899
    ありがとうございます。
    if(hash[1] == 'page2') showPlagin(1);での記述は以前に試してみたのですが、動かず、
    先ほど再度行ってみたのですが出来ませんでした。
    お使いの環境で動いたのであれば、参考までにHEADやBODYでの記述を見せていただけると嬉しいです。
    jqueryだと折りたたみが複数ある場合一つしか選ぶことができないと思ったのですが、そうでもないのでしょうか
    関数について無知が露呈してますよね。勉強します。
    903 : Name_Not - 2011/08/31(水) 01:57:20.76 ID:??? (+9,-30,-114)
    可能性1
    if(hash[1] == 'page2') showPlagin(1);
    が記述されているのが、head内(正確には<div id="PlagClose1"以降で無いといけない。)
    ※これがよくある間違い。

    可能性2
    function showPlagin(idno){}
    が記述されているのが
    if(hash[1] == 'page2') showPlagin(1);
    より後

    可能性3
    hashが正しくない
    904 : Name_Not - 2011/08/31(水) 02:45:43.46 ID:??? (+18,-30,+0)
    >>903
    ありがとうございます。可能性1がそのまま当てはまりました。
    BODY内の一番下にif(hash[1] == 'page2') showPlagin(1);を移しました。
    ただ、まだ動きません。

    可能性2については現在HEADにfunction showPlagin(idno){}、BODY部分にif(hash[1] == 'page2') showPlagin(1);なので
    これではないと思います。
    可能性3については、

    折りたたみBODY部分
    <div id="PlagOpen1" style="display: block"><a href="a" title="OPEN" onclick="showPlagin(1);return false;">続き</a></div>
    <div id="PlagClose1" style="display: none"><a href="b" title="CLOSE" onclick="showPlagin(1);return false;">続き</a>
    内容
    </div>

    BODY内展開用部分
    <script type="text/javascript">
    function(){
    var hash = window.location.hash;
    hash = hash.split("?");
    hash = hash[0].split("#");

    if(hash[1] == 'page2') showPlagin(1);
    if(hash[1] == 'page3') showPlagin(2);
    }

    </script>

    で、URLはhttp://www.xxxxxxxx#2という形なので、違うと思うのですが
    905 : Name_Not - 2011/08/31(水) 02:47:55.99 ID:??? (+12,-24,-47)
    >>904
    すみません、>>904
    >で、URLはhttp://www.xxxxxxxx#2という形なので、違うと思うのですが
    部分のURLは適当なものを書いたのですが、変なページに飛ぶようです。
    クリックはしないようお願いします。
    906 : Name_Not - 2011/08/31(水) 04:11:33.90 ID:??? (+4,-30,-175)
    >>905
    動作に関係がありそうな箇所だけ突っ込んでおくと…

    ・URL のハッシュは 2 でなく、page2 なのでは?

    ・<div id="PlagClose1" style="display: none"><a href="2" title="CLOSE" onclick="showPlagin(2);return false;">続き</a>

    ここ、showPlagin(2) -> showPlagin(1)

    ・BODY内展開用部分
    それ構文エラー。
    907 : Name_Not - 2011/08/31(水) 04:13:34.22 ID:??? (+57,+29,-10)
    良く見たら、2番目については初出のものから修正されてんのね。
    908 : Name_Not - 2011/08/31(水) 05:12:04.68 ID:??? (-6,-29,+0)
    Firefox6.3って何
    909 : Name_Not - 2011/08/31(水) 07:19:07.55 ID:??? (+31,-30,-168)
    質問いいですか。
    Firefox6.0で動かしてます。

    <span onclick="this.innerHTML=\"zzz\"">xxx</span>
    とするとダブルクオーテーションのエスケープ文字が上手く解釈してもらえません。
    今までこう書いてそれで動いてたと思うのですが、Firebugで見ると
    onclick="this.innerHTML=\"
    となってます。

    <span onclick="this.innerHTML="zzz"">xxx</span>
    とすると動きました。

    エスケープ文字ってこういう時の為にあるもんと思ってたのですが。
    なんで最初のは動かないんですか?
    910 : 909 - 2011/08/31(水) 07:21:43.89 ID:??? (-2,-30,-32)
    最後のは
    <span onclick="this.innerHTML="zzz"">xxx</span>
    です。
    後テンプレ使ってなくてすみません
    911 : Name_Not - 2011/08/31(水) 08:33:20.26 ID:??? (+7,-30,-100)
    DOM操作でCSSのmin_widthを10px調節したいです
    document.getElementById("hoge").style.min_width="10px";
    とカンでやってみたのですが、上手くいきませんでした

    min_widthの場合はどう記述したらいいのでしょうか?
    調べたりたりしてもmin_widthの操作についてはどこも書かれてなかったので
    912 : Name_Not - 2011/08/31(水) 08:37:47.10 ID:??? (+32,-29,-17)
    >>911
    http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-ElementCSSInlineStyle

    というかそもそもcssの場合の記述も間違ってるよそれ
    913 : Name_Not - 2011/08/31(水) 08:51:21.55 ID:??? (+61,+29,-11)
    >>912
    ありがとうございます、勉強になります。オッス
    914 : Name_Not - 2011/08/31(水) 09:45:34.74 ID:??? (+34,-29,-34)
    >>909
    HTMLパーサーがJavaScriptのエスケープ文字を認識する必要はない
    そのうちXSSやらかすぞ
    915 : Name_Not - 2011/08/31(水) 10:13:48.40 ID:??? (+0,-29,-17)
    >>909
    HTMLの属性値のエスケープは \ じゃないよ。
    916 : 909 - 2011/08/31(水) 10:31:45.35 ID:??? (+62,+29,+0)
    >>914-915
    レスありがとうございます。
    今までずっと勘違いしてたわ
    918 : Name_Not - 2011/08/31(水) 15:17:42.76 ID:??? (-7,-29,-16)
    src 属性を指定した場合、タグ内のテキストは無視される。
    サイ本読め。
    919 : Name_Not - 2011/08/31(水) 15:22:12.68 ID:??? (+0,-28,-37)
    処理されないってだけでJS側からは文字列としてDOMで取得できるっしょ
    920 : Name_Not - 2011/08/31(水) 15:25:52.38 ID:??? (+57,+29,-2)
    あ、そっか。
    でも id も振ってないしなぁ。
    921 : Name_Not - 2011/08/31(水) 15:29:19.71 ID:??? (+3,-29,-33)
    コード中にsrc属性の値と同じ文字列(https://apis.google.com/js/plusone.js)があるから
    script要素ノードを列挙してそのsrc属性の値を見て自身が所属するscript要素を取得してるのかな
    上記の文字列は見付かったけど処理部分は見つけられなかった
    922 : Name_Not - 2011/08/31(水) 15:37:30.06 ID:??? (+112,+29,-21)
    実行時に末端のノードを辿ると必ず自身のscriptエレメントになる


    そうだよ。試した事無いけど。
    923 : Name_Not - 2011/08/31(水) 15:40:30.86 ID:??? (+17,-19,-9)
    >>922
    それ今回の場合でも使われてる?そもそもscript要素を取得するコードが見つけられない
    924 : Name_Not - 2011/08/31(水) 15:51:49.12 ID:??? (+7,-30,-69)
    jsloader.load内で
    function q(b, d) { ~ document.write('<script src="' + b + '"><\/script>') ~ }
    が実行されてるから、そっちで探してるんじゃね。
    window['___jsl']['u']もhttps://apis.google.com/js/plusone.js内じゃ使われていないように見えるし。
    925 : Name_Not - 2011/08/31(水) 15:54:49.10 ID:??? (-1,-29,-46)
    >>924
    そうみたい
    外部スクリプトを呼んでてそっちだとscript要素の取得と「/js/plusone.js」の有無を見てるっぽい
    926 : Name_Not - 2011/08/31(水) 16:07:34.39 ID:??? (+71,+29,+0)
    >>922
    なるほど。
    使い道は分からないけど、面白い。
    927 : Name_Not - 2011/08/31(水) 16:10:23.35 ID:??? (-2,-30,-115)
    これかな?

    var Hb=l.getElementsByTagName("script");if(Hb[A]>0){for(var Ib="",Jb=0;Jb<Hb[A];Jb++){var Kb=Hb[Jb].getAttribute("src");Kb&&Kb[t]("/js/plusone.js")!=-1&&(Ib=R.b.yb(Hb[Jb]))}Ib=Ib[s](/^\s+|\s+$/g,"");Ib[t]("{")!=0&&(Ib="{"+Ib+"}");
    928 : Name_Not - 2011/08/31(水) 18:39:58.99 ID:J4vpbc1P (-20,+29,+0)
    >>918-927
    みなさんありがとう
    >>927のがそれっぽいですね
    929 : Name_Not - 2011/08/31(水) 20:25:47.93 ID:??? (+26,-16,-32)
    >>922の方法は動的にscript要素が挿入されたりするとうまくいかなかったり面倒くさくなったりするみたいだし
    (ttp://blog.livedoor.jp/dankogai/archives/50952477.html)
    src属性やテキスト文字列で判断するのが確実なのかなあ
    930 : Name_Not - 2011/08/31(水) 23:01:47.86 ID:??? (-1,-29,-13)
    dankogaiの言うことは真面目に聞くだけ無駄
    @deferも@asyncもなければスクリプト先頭でとればいい
    どっちかの属性があるときだけ考えろ
    931 : Name_Not - 2011/09/01(木) 02:14:54.98 ID:??? (+3,-30,-307)
    GoogleChromeの拡張についてなのですが、拡張の作成スレが無いのとjsについてなのでこのスレで失礼します
    20MBのテキストをローカルのファイルに書きこむにはどうしたらよいでしょうか

    現時点では、backgroundのJavascriptの変数hogeに20MBのテキストが入っていると考えて下さい。それをどうにかしてローカルファイルに書き込みたいです
    今まではw1=window.open("","_blank","");して、w1.document.writeでtextareaを作って、そこにテキストを流し込んでいました
    手動で選択し、コピーし、エディタに貼りつけて保存する手間はかかりますが、可能でした

    しかし20MBのテキストを同じようにw1.document.writeしようとすると、途中でchromeが落ちてしまいます。
    >>TM Lifehttp://tmlife.net/programming/javascript/javascript-text-local-save.html
    この方法でdata:application/octet-stream~でやろうとしましたが、同じく拡張自体が落ちてしまいました

    もう最悪、localStorageに入れて、バイナリエディタで取り出してね♪でもいいですから、何かアイディアがあれば教えて下さい
    (localStorageは容量制限でダメだった)
    932 : Name_Not - 2011/09/01(木) 06:18:45.84 ID:3BvzIVQV (+142,-30,-177)
    アクセスログ収得のため以下の記述をしています。

    <script language="JavaScript">
    <!--
    document.write("<img src='http://www.XXXX.jp/cgi-bin/access.cgi?toppage&", parent.document.referrer," ' height=1 width=1>");
    // -->
    </script>

    先日、遅まきながらIE7からIE8へとバージョンアップしました(OSはXPです)
    ところが、IE8にしたところ「height=1 width=1」が画像表示されるようになってしまいました。
    IE7ではなかったことです。またFirefoxでも表示はされません。
    たった1ドットですがゴミがついているかのようで、気持ちが悪いものです。
    今までなかったものですから、ぜひ消し去りたい(非表示にしたい)のですがその方法が分かりません。
    どなたか回避方法を教えてください。宜しくおねがいします。
    933 : Name_Not - 2011/09/01(木) 06:30:48.26 ID:??? (-4,-29,-34)
    Indexed Database APIに入れて、バイナリエディタで取り出してね♪
    934 : Name_Not - 2011/09/01(木) 07:07:07.03 ID:??? (+20,-29,-7)
    <script>
    new Image().src = "http://www.XXXX.jp/cgi-bin/access.cgi?toppage&" + parent.document.referrer;
    </script>
    935 : Name_Not - 2011/09/01(木) 09:50:06.77 ID:??? (+3,-30,-225)
    htmlが
    <p id="hoge"></p>
    のようになっていて、テキストが約30秒間隔でランダムな文字列で変化します。
    例えば、<p id="hoge">hoge</p> → <p id="hoge">FUGA</p> のように。
    この30秒は約なので、25秒のときもあれば35秒のときもあります。

    このようなホームページがあるのですが、
    このホームページを監視して、変化した文字列のログを取りたいと考えています。
    単純にPerlなどでhtmlファイルを取得して、id=hogeのpタグのテキストを切り出しても
    テキストはJavaScriptで非同期で書き換えられているので、空文字列しか取得できません。

    このため、htmlファイルをサーバから取得するのではなく
    『現在ブラウザに表示されている動的に書き換えられたhtml』
    をJavaScriptを使って取得&解析しなければならないと考えているのですが
    アプローチ方法が分かりません。

    やり方を教えて下さい。
    よろしくお願いいたします。
    936 : Name_Not - 2011/09/01(木) 10:26:02.12 ID:??? (+9,-13,-15)
    ユーザスクリプトでいいんじゃないか
    938 : Name_Not - 2011/09/01(木) 11:05:55.38 ID:??? (+46,+23,-14)
    いつからPHPスレになったんだよ
    940 : Name_Not - 2011/09/01(木) 15:37:16.83 ID:??? (+65,-29,-105)
    >>937
    生成したサムネイルのURLを返してそれをimgタグで表示するとか
    生成したサムネをbase64エンコード化して返してdata uriで表示するとか
    通信がタイムアウトするぐらい処理時間が長いなら
    setTimeoutとかで定期的に監視するとかでいいんじゃない?


    >>939
    出直してこい
    941 : 937 - 2011/09/01(木) 15:55:45.78 ID:??? (+0,-27,-32)
    >>940
    >通信がタイムアウトするぐらい処理時間が長いなら

    ここの処理がわからなかったです。setTimeoutですか、、
    助かりました、ありがとうございました
    942 : 932 - 2011/09/01(木) 16:19:33.04 ID:3BvzIVQV (+13,+29,-71)
    >>933
    ありがとうございます。ググってみます。

    >>934
    単に、その記述に置き換えると言う意味でしょうか?


    不思議なのは、このまで不具合がなかったのにIE8でのみこの現象が現れるということです。
    IE8の仕様なのでしょうか?表示方法がより厳格(記述のミスがそのまま反映?)なのでしょうか?
    初心者な質問ですみません。
    943 : Name_Not - 2011/09/01(木) 16:22:47.61 ID:??? (-6,-29,+0)
    css style.display
    944 : Name_Not - 2011/09/01(木) 17:17:07.08 ID:??? (+88,+20,-19)
    >>942
    本当にタイムアウトしてるの?
    >>940の一行目で解決できる気がする
    945 : 932 - 2011/09/01(木) 17:44:46.28 ID:??? (+109,+29,-40)
    >>944
    すみません>>940を見落としていました。ありがとうございます。

    「生成したサムネイルのURLを返してそれをimgタグで表示」
    ちょっと私にはレベルが高いようでよく理解できません。
    適当な初心者向けのスレとかありますでしょうか?
    946 : Name_Not - 2011/09/01(木) 18:14:00.42 ID:??? (+106,+29,-29)
    >>945
    サムネURLでimageデータ取れるんだから、後は表示するだけだろ
    何が分からないのか分からない
    まさかサーバーサイドの話をする気ではあるまいな
    947 : 932 - 2011/09/01(木) 18:17:05.86 ID:??? (+71,+29,-10)
    >>946
    すみません。サーバーの話ではないです。
    別途、透過GIF画像などを用意する必要があるということでしょうか?
    948 : Name_Not - 2011/09/01(木) 18:47:25.58 ID:??? (+94,+29,-17)
    何もかも○投げ?ここじゃなくてそのアクセスログのサービス提供者だか配布元だかに聞けば
    949 : Name_Not - 2011/09/01(木) 18:51:53.91 ID:??? (+57,+29,-2)
    お前らアンカ先をちゃんと確認しろよwwww
    950 : 932 - 2011/09/01(木) 18:54:43.04 ID:??? (+92,+29,-71)
    >>948
    見よう見まねで自作したもので手詰まり状態です。
    この件は根本から見直そうと思います。
    お手数おかけしました。

    ところで、現在の状況は>>932で書きましたが
    http://www.kab-studio.biz/Programing/Codian/CGIwithC/04.html
    上記の例のような感じです。
    IE7やFFではこのような現象は見られません。IE8のみの現象なんです。
    IE8だけなにか特殊なブラウザなんでしょうか?
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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