Code Archive Skip to content Google About Google Privacy Terms
IEでJSのエラーになったときに立ち上がるデバッガって大体の人が使いこなせてないのではないでしょうか? ちなみに僕もそうだったのですが、ふと思い立って調べてみました。 追記 (2008-01-10T14:24:30+09:00) はてブのコメントで、 MS Office持ってない人はVisual Web Developer(VWD)で。/ちょっと前にこんなの書いたので、VWD 2008使う人は参考にしてもらえると幸い。 http://d.hatena.ne.jp/terurou/20071218/119796573 とありました。 これはid:kaorunさんにも聞いていたので後で試そう〜と思ってたので助かります。 合わせてご覧になって下さい。 Microsoft Script Editorとは? のようにOffice付属のツールだったりします。僕の環境では、 C:\Program Fil
IE でのメモリリーク ちょこちょこと紹介されているので知っている人も多いと思うが、IE には DOM ノードに絡んだメモリリークの問題がある。これに関しては Microsoft 自身の記事である「Understanding and Solving Internet Explorer Leak Patterns」に詳しいが、簡単にいえば DOM ノードオブジェクトに関する循環参照を作ると、IE を終了させるまでそのオブジェクトが解放されないというものだ。記事によればメモリリークには以下のようなパターンがあるという。 1. 単純な循環参照 ある DOM ノードオブジェクトのプロパティをたどっていくと自分自身に行き着く場合。以下のようなパターンが考えられる。 element.property == element element1.property1 == element2, element2
最近、Javascriptで開発していて、ブラウザ依存のバグに出会うことが多いので、実例をメモ。 原因と対策は、リンク先を参照されたし。 ifreame上のinput、textareaからキャレットが消えるバグ Windows版Firefoxで発症。 実例 ↑の場合は、背景のオーバレイDIVを消したら、治った。 Bug 226933 - Caret vanishes in input form elements over iframe - lambda {|diary| lambda { diary += 1 } }.call(hatena) http://d.hatena.ne.jp/winebarrel/20070814/p1 透明のオーバレイDIVを表示すると勝手にFlashが消えるバグ Mac版Firefoxのみ発症。 透明度が関連するので、DIVのフェードイン、フェードアウトのエ
We’re getting things ready Loading your experience… This won’t take long.
IEで不透明度を変更するために下記のようなコードを書いたのですが、対象のエレメントのスタイルによって、不透明度が変わらない場合があることに気がつきました。(IE6、7共に) element.style.filter = 'alpha(opacity=50)';だめだったのは、div要素に対して background-colorだけを指定したもので、これに対してwidthまたはheightを追加指定すると、ちゃんと不透明度が効いてきます。 なお、JavaScriptではなくcss上でfilterの指定を行っても同様でした。(width,heigthがないと効かない) script.aculo.us(v1.7.0)ではどうしているんだろうと、ソース(effects.js)を眺めてみたところ、Element.setOpacityでは特に考慮しているような処理は見当たりませんでした。(その先のpr
はじめに VBScriptのTypeName()関数は変数はその変数がどんな型なのかを返してくれる関数です。 これはscript要素がtext/vbscriptならば使えるのですが、出来ればJavaScriptで使いたいって話です。 Microsoft API and Reference Catalog window.execScript()について 実はこんなメソッドがwindowオブジェクトにありました。 window.execScript(sExpression, sLanguage) こういう感じで使います。 Window - Web APIs | MDN VBScriptをJavaScriptで呼び出したり出来る こんな感じです。 if (window.execScript) { window.execScript('Function xTypeName(x): xTypeNam
Companion.JS (pronounced Companion dot JS or CJS) is a Javascript debugger for IE. The current version is 0.5.5. Companion.JS adds the following features to IE : Detailled javascript error reporting (call stack and real file name where the error occured). "Firebug"-like Console API feature. Javascript console feature useful to inspect javascript objects at runtime. A toolbar icon to open the Compa
Debugbar is an IE (Internet Explorer) web development bar, divided in a toolbar and a sidebar. It aims to help you debugging your website faster or to analyse quickly any web page. The Toolbar The toolbar is a the top of the IE browser. This bar contains several features to ease your debug session: Customize the DebugBar Check for updates Alert on javascript errors A must one: send page screenshot
昨日の続きです。昨日の記事がまったくデタラメだとさすがに気まずいので、Invoke が呼ばれてるよ、という事実ぐらいは確かめようと思いました。私はバイナリアンではないのですが、がんばってMSHTMLの中を追ってみることにします。 まず、C++からIDispatch::Invokeを呼んだ場合と、Javascriptから window.document を参照した場合の2つの処理が合流するところを探しました。 ↑ここです。 スタックの中を覗くと、引数が見えます。 window.document の dispid(呼び出したいメソッドのID)である0x47fが確認できます。 では、ここにブレークポイントを仕掛け、amachangのハックをしない状態で、以下のコードを実行してみます。 alert(document); するとブレークポイントがヒットします。 dispid は 0x47f なので、
amachang史上最多のブクマ数をマークした例のwindow.documentの高速化に関して、便乗してちょっと書いてみようと思います。 基礎知識 ブクマコメントで 2007年10月11日 b:id:staki vbやった事ある人なら自然に沸く発想だったりする。理屈も同じなんじゃなかろうかと妄想。五倍ってのは中々無かったけど。 * と指摘されているのは、たぶんCOMまわりの事だと思います。御存知のように、Windowsはシステム内のあらゆる部品をCOM(Component Object Model)オブジェクトとして実装しており、IE内のxxElementやDocument、Window、そしてIE自身もCOMです。 で、javascriptでよくやる window.document という操作も、(amachangのテクニックを使っていない場合は)COMを通して行うことになります。この
DOM の getAttribute / setAttribute メソッドは DOM Level 1 から定義されているメソッドで、MSDN Library によれば IE はバージョン 4 からサポートしています。しかし、IE での element.getAttribute(name) / element.setAttribute(name, value) というのは、基本的には JavaScript における element[name] / element[name] = value のシンタックスシュガーでしかありません。ですから、element.setAttribute("innerHTML", "foo") とすると、element の属性には何の変化もないが element の内容が書き換えられるという事態になります。 この (手抜き) 実装が原因で、getAttribute
以下の一行をすべての JavaScript の前に読み込む /*@cc_on _d=document;eval('var document=_d')@*/ この一行を読み込むことによって IE での document へのアクセスが 5 倍速くなります。 たとえば 以下のように、読み込む前と読み込んだ後を比較してみます。 // Before var date = new Date; for (var i = 0; i < 100000; i++) document; alert(new Date - date); // 643 /*@cc_on _d=document;eval('var document=_d')@*/ // After date = new Date; for (var i = 0; i < 100000; i++) document; alert(new Date -
IEerBug は Internet Explorer 6.0 と FireFox 1.5 で動く JavaScript 用のデバッグ コンソールです。 FireBug と同じ console.log()、console.debug() などの関数が使えるようになるため、FireFox と IE の両方でデバッグする場合に便利です。コンソールに出力したオブジェクトを、DOM インスペクタを利用して解析することも可能です。 使い方 ieerbug.zip をダウンロードし、中身をアプリケーションのディレクトリに配置します。IEerBug 用のディレクトリを作成して、その中に配置しても問題ありません。 HTML の中で次のようにして ieerbug.js を読み込みます。
日頃より楽天のサービスをご利用いただきましてありがとうございます。 サービスをご利用いただいておりますところ大変申し訳ございませんが、現在、緊急メンテナンスを行わせていただいております。 お客様には、緊急のメンテナンスにより、ご迷惑をおかけしており、誠に申し訳ございません。 メンテナンスが終了次第、サービスを復旧いたしますので、 今しばらくお待ちいただけますよう、お願い申し上げます。
はい! こんにちは!!!!! 今日は、偶然ブラクラ発見しちゃったから、それをお伝えしますね! これだよ! <script>document.createStyleSheet().addRule('html > body', 'display:block');</script> → サンプル (IEだとブラウザが固まった上にメモリ 1.5 GB くらいくっちゃうよ! 注意してね!) IE6とかIE6のコンポーネントブラウザだと確実に落ちちゃうみたいだね!IE7は落ちないけど! CSSStyleSheet オブジェクトに addRule で子孫セレクタをあてるとダメなかんじかな! ちなみに display:block の箇所はどんなプロパティでも落ちるよ! なにこれ!よくわかんないけど面白いね…! FirefoxとかOpera大好きっ子は、これをたくさんバラまいてIEのシェアをどんどん下げちゃ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く