2008-09-01から1ヶ月間の記事一覧

uupaa.js version 0.6 をリリースしました。

変更点: http://uupaa-js.googlecode.com/svn/trunk/CHANGELOG.htm 注意点 version 0.6 では CSSセレクタ(uu.css)を書き直しています。 → querySelectorAll相当の機能を実装してみた(uupaa.jsのCSSセレクタを書き直した) - latest logjQueryと比較した場合に…

こっそりと特定の要素をマーキングし取得する

CSS + JavaScript(uupaa.jsも)を使い、ユーザに悟られないように要素をマーキングし、要素を特定する方法です。昨日までの一連のエントリから、ユーザに知られずに要素をマーキングする妥当な方法がやっと見つかりました。 IE なら ruby-align: center を、…

ブラウザ毎の getComputedStyle の戻り値

currentStyle, getComputedStyle() が返す値を調べています。getComputedStyle() は、描画に使われるスタイルに(近い)値を取得する便利なメソッドです。 currentStyle は IE と Opera で使用できる JavaScript プロパティですが、やる気の無い値(widthで"aut…

JavaScriptでマウスカーソルがポイントしている要素(:hover)を取得する方法

さっき書いたエントリは前フリでこっからが本題。マウスカーソルが乗っている要素を直接取得する関数があったら色々と便利です。ゲームなどにも使えそうですし。 document.elementFromPoint(x, y) とすることで x,y直下の要素を取得できますが、Firefox2 に…

Operaはライブラリ側の創意工夫でなんとか出来ないことが多い

他のブラウザで出来るのにOperaで出来ないこと ユーザーに気づかれないようにスタイルを設定しづらい ブラウザをHackして、本来実装されていない機能を実現するために、CSSを使って要素をマーキングをしたい場合があります。 そのような場合は、ユーザには気…

uupaa.js 0.6 RC1がダウンロード可能になりました。

uupaa.js(ver 0.6 RC1)がダウンロード可能になりました。RC0からの変更は、 uu.readyの再実装 uu.unreadyの追加 となっています。

uupaa.js 0.6 RC0がダウンロード可能になりました。

uupaa.js(ver 0.6 RC0)がダウンロード可能になりました。version 0.6 では、 新しいCSS3 Selector IE6でDataScheme(image/gif)が使用可能に IE6でposition:fixedが使用可能に ModuleReady状態のサポート いくつかのBugFix 等の変更があります。特に問題が無…

IE6 で position: fixed をサポートしました。

uupaa.js(0.6) から IE6 でも position: fixed が使用可能になります。こんな感じのCSSが使えるようになりますよ。 position: fixed; top: 100px; position: fixed; bottom: 5em;em単位で指定した場合は、フォントサイズを変更すると自動的に追従しますし、…

なめらか卵のとろけるプリン

今日はおもに、Effectのなめらかさを向上させる方法を模索していました。Effectはタイマードリブンです。タイマーから定期的なタイミングで呼ばれ式を評価し結果を描画します。 タイマーを細かく設定すれば理論上のなめらかさは向上しますが、実際にはブラウ…

今日はOFF日

家族をつれて小岩井農場へ。 マフマフなメェメェに遊んでもらいました。

querySelectorAll相当の機能を実装してみた(uupaa.jsのCSSセレクタを書き直した)

ここ数日は、uupaa.js の CSSセレクタ部分を書き直してました。 CSSセレクタ部分とは、jQuery("div > p") とか $$("#hoge~span") を解釈し要素を選択する機能です。document.querySelectorAll() としても標準化されています。uupaa.js(ver 0.5)まではCSSセレ…

Firebug 1.2.1 がリリースされています。

https://addons.mozilla.org/ja/firefox/addon/1843β版を手動でインストールしていた方は、自動更新のチェック対象からもれているかもしれません(私がそうでした)。

querySelectorAll

古いブラウザ向けに、getElementsBySelector いわゆる querySelectorAll を実装しようと、色々と取り組んでいるんですが、いくつか問題が。 なんかきれいに実装できない。 "E + F" と "E ~ F" のFは先読みしたほうがいいのか、しないほうがいいのか :first-l…

古いIEを共存させてみる試み

古い IE で uupaa.js を動かすとどうなるんだろう? とちょっと気になったので、 IE7とIE6を共存させる方法:まとめ | コリス で紹介されている「IE7をベースに、IE6をスタンドアローンで起動する方法:その1」を試してみました。 IE6が入っているWinXPに、I…

最近のOperaってデグレードしてませんか?

例えばマルチプルセレクトのセレクトボックスで、ドラッグしたままアイテムをずずずって選択し、セレクトボックスの外に移動してドラッグを止めると、アイテムの選択状態は変化しているのに onchange イベントが発生しないとか。 # Opera9.2xまでは問題なか…

プラシーボ効果はもちろんご存知ですよね?

id:ofk さんの記事 http://d.hatena.ne.jp/ofk/20080912/1221205218 に書かれている「結論」に妖気を感じたので、釣られてやってみた。 内容は == の次に === で比較するものをTEST1 === の次に == を比較するものをTEST2としています。 ofkさんの試した環境…

Opera9.60β1を入れてみた。

Opera9.5β が出たばかりなのに、もう9.6βが出ました。 ChangeLog: http://www.opera.com/docs/changelogs/windows/960b1/ 今回のUserAgent(ユーザーエージェント)は、"Opera/9.60 (Windows NT 5.1; U; ja) Presto/2.1.1" です。Opera9.52 は "Opera/9.52 (Wi…

高速化

昨日がベンチマークだったので、今日は速度について。 いつまで教科書を信じてるんだい? プログラミングの教本には、「ループ」がこのように書かれています。 これはよく見られる記述ですが、最も遅い書き方です。 var ary = [...]; var i; for (i = 0; i < …

ベンチマーク

ベンチマークは、できるだけ多様な条件で取得すべきです。たとえば、Array.prototype.forEach のベンチを取る場合は、 var ary = [0, 1, 2, ...]; ary.forEach(function(v, i) { // なにか }); のようにすると思いますが、これでは不十分です。どれが、とは…

CSS outline problem in Opera9.52

Subject: The CSS "outline" is different in Opera9.52 from other browsers. PC: WindowsXP SP2. ScreenShot: Opera9.27(Build:8841), Opera9.52(Build:10108), Google Chrome0.2.149.29, Safari3.1 <html> <head> <title>Opera9.52 outline</title> <style type="text/css"> html { margin: 2em; outlin…</head></html>

何かを成し遂げた次の日は休むものです。

って某脳科学の研究者が言ってた。「ピッコーン!」ってのはリラックマな状態が続いたときに出やすい。とも。抑圧された状態で溜め込んでいた欲求とか知識の断片が分解され再構築されて出てくるらしい。 「あぁ、脳内には国家錬金術師がいるんですね」と解釈…

Changed setting of comment - はてなユーザ以外の方でもコメントが可能になりました

When you answered it for a simple question, comment to the blog was enabled.はてなユーザ以外の方でも、簡単な質問に解答していただくことでブログへのコメントが可能になりました。ご報告まで。

uupaa-datasceheme.js Version 1.0をリリースしました。

今回のリリースで以下の改善を行いました。 インターレースGIFが正しく表示されるようになった 256byte以上のデータを持つ画像が正しく表示されるようになった 表示サイズを制限する機能を盛り込んだ(デフォルトは48x48) 試してみたい方はこちらから http://…

uupaa-datasceheme.js Version 0.6をリリースしました。

連日開発していた機能を単体で動作するようにギュギュッと固めて、リリースしてみました。 http://code.google.com/p/uupaa-js-spinoff/お試しページはこちら http://code.google.com/p/uupaa-js-spinoff/ IEでアクセスしてください。 Canvasを使った描画機…

IE5〜IE7でも、RFC2397(Dataスキーム, DataURI)を使えるようにした!(続き)

ある程度の描画速度の改善と、描画品質(拡大/縮小)の大幅な改善に成功しました。 速度的なロスを回避しつつ描画品質を改善できたときは、心の中でガッツポーズがでました。 ほかに大きな問題が見つからなければ、DataURIをデコードする機能をリリースできそ…

IE5〜IE7でも、RFC2397(Dataスキーム, DataURI)を使えるようにした!

IE5,IE5.5,IE6,IE7 とおよそ10年に渡り、実装されなかった機能の一つに、Dataスキーム(DataURI) が あります。 uupaa.js version 0.6(近日中にリリース予定)では、DataURI をデコードする機能をエミュレートします。 DataURIって何 ラリーさんがRFC2397で提…

突如登場した新ブラウザGoogle Chromeへの対応

先ほどGoogle Chromeをダウンロードできました。 http://www.google.com/chromeアイコンもメトロイド風味で良い感じ。(今ならポケモンって言うんだろうけど)これから、uupaa.js を Chrome に対応させるための作業を開始します。 ファーストインプレッション …

uupaa.js version 0.5の問題

自分で自分にIssueチケットを発行してもあれなんで、ver0.5で見つかった問題をここに列挙しておきます。 uu.css() uu.config.cacheID の値を参照していないためキャッシュが常に有効になっている 修正方法 - uupaa.js(217) if (expr in uu._cacheXPath) { + …