タグ

JavaScriptとTipsに関するwackyのブックマーク (320)

  • Implementing a Syntax-Highlighting JavaScript Editor In JavaScript

    Implementing a Syntax-Highlighting JavaScript Editor—In JavaScript /* A brutal odyssey to the dark side of the DOM tree */ In one of his (very informative) video lectures, Douglas Crockford remarks that writing JavaScript for the web is 'programming in a hostile environment'. I had done my fair share of weird workarounds, and even occasonally gave up an on idea entirely because browsers just would

    wacky
    wacky 2007/05/27
    JavaScriptで構文色分け機能付きのテキストエディタを実装する方法。(英語)
  • gmailで添付ファイルが自動でアップロードされるしくみ - bits and bytes

    gmailでメールを書くとき、添付するファイルを選んでからしばらくすると、いつの間にか添付ファイルがアップロードされています。 添付するファイルを選ぶと、はじめファイル名が表示されていたのが 自動的にアップロードされて、名前とファイルサイズが表示されています! 実は、あまり名前も聞かなくなった Google Page Creator がリリースされたときにいちばんびっくりしたのはページの右下にこのgmailの自動アップロードとよく似たしくみがあったことでした。で、さっそく解析してマネしてみたことがあります。今回はgmailでその仕組みを見てみます。 ちなみにその Google Page Creator には、ログインすると右下にこんな ファイルをアップロードするのに使う部分があります。 gmailの場合、メールが自動保存されるタイミングでアップロードされているかんじでしたが、こっちのはBr

    wacky
    wacky 2007/05/27
    GmailやGoogle Page Creatorの自動アップロードの仕組みを解説。onchangeイベントで隠しiframeにsubmit。
  • JavaScript で幅に合わせて文字列を切りつめる - Psychs's blog

    デスクトップアプリを開発してると、ListView のカラム幅が足りなくなったときに「My Docume...」のように自動的に末尾を「...」で埋めて切りつめてくれる機能がある。ウェブでも同じことをやりたかったので、作ってみた。 まず、文字列の幅を測定するには、 <span id="ruler" style="visibility:hidden;position:absolute;"> </span> みたいな隠しエレメントを用意しておいて、 String.prototype.getExtent = function(ruler) { var e = $(ruler); var c; while (c = e.lastChild) e.removeChild(c); var text = e.appendChild(document.createTextNode(this)); var

    JavaScript で幅に合わせて文字列を切りつめる - Psychs's blog
    wacky
    wacky 2007/05/25
    物理的な幅に従って長い文字列の後ろを切り捨てる方法。切り捨てた個所は「...」で埋める。
  • IE6でmin-width,max-widthを実装する:CSS | Tech de Go

    漬物は料理において重要なアクセントを提供します。 その酸味が、事の味わいを引き締め、新たな深みを加える役割を果たします。 例えば、酢漬けの漬物は、独特の酸味と爽やかさで料理全体を軽やかにし、油っぽさを中和します。 これにより、べ手の口の中をさっぱりとさせるだけでなく、欲を増進させる効果も期待できます。 また、塩漬けの漬物もまた重要です。 塩の効果で野菜から水分を抜き、旨味を凝縮させることで、料理に深いコクと風味を加えます。 この塩味は料理全体のバランスを整え、事を豊かにしてくれます。 漬物の酸味が生む料理のアクセントは、料理の種類や季節によっても異なります。 夏にはさっぱりとした酢漬けの漬物が、冬には塩漬けの漬物が特に重宝されます。 季節感や地域の材と漬物の組み合わせを工夫することで、料理の魅力がさらに引き立ちます。 漬物は単なる付け合わせではなく、事の一部としてその重要性を増

    wacky
    wacky 2007/05/22
    expressionを利用してIE6でもmin-width / max-widthを使えるようにする。
  • One-Line JavaScript Memoization

    Computing the length of a Bezier curve is expensive, but the length of a given Bezier doesn’t change over time. In my JavaScript Bezier implementation, I wanted to compute the length only the first time it’s need, and save this result in order to return instantly thereafter. This is a special case of memoization. There are well-known strategies for implementing memoization. But getLength is a null

    wacky
    wacky 2007/05/21
    関数の戻り値をキャッシュして再利用するプログラム高速化手法「メモ化(memoization)」をJavaScriptで実装。(英語)
  • IBM - 日本

    企業には、汎用的なAIではなく「ビジネス向けに設計されたAI」が求められることを強調する、新たなキャンペーンを開始しました。これらのアニメーションに込めた「IBMよりお伝えしたい5つのこと」をご紹介します。 最新情報 ドイツテレコム社がIBM Concertを採用し、AIを活用した自動化でIT業務を加速 IBM、2025年度第2四半期の連結決算を発表 日IBM、医療従事者の業務変革を促進する「病院業務支援AIソリューション」を提供開始 CEOスタディ2025「ビジネス成長を飛躍させるための5つの意識改革」日語版を公開 IBM、エンタープライズITの水準を引き上げるIBM Power11を発表 ウィンブルドンを主催するオールイングランド・ローンテニス・クラブとIBM、リアルタイムでファン・エンゲージメントを高める新たなAI機能を発表 日IBM、JICAの海外投融資(融資)業務のシステム

    IBM - 日本
    wacky
    wacky 2007/05/20
    循環参照によるJavaScriptのメモリリークの仕組みとその対処方法。(英語)
  • javascript - 関数をtraceする : 404 Blog Not Found

    2007年05月18日14:15 カテゴリLightweight Languages javascript - 関数をtraceする amachangのコメントを受けて追記 JavaScript: 関数の追跡 - 文系大学的IT系の悲哀からのTBを受けて追記 書き換えめんどいー。 IT戦記 - JavaScript の関数を「引数そのまま返す化」 alertだけ alert(hoge); hoge.method(); 改行めんどいー。 alert + そのまま返す化 alert.s(hoge).method(); // 1 ステートのまま Functionオブジェクトを拡張 というわけで、関数をtraceするmethodをFunction Objectに追加してみる。 まずは実例。 function add(x,y){ return x + y } add = add.trace('add

    javascript - 関数をtraceする : 404 Blog Not Found
    wacky
    wacky 2007/05/18
    関数呼び出し時に関数名・引数・戻り値をalertで表示するFunctionオブジェクト拡張。コードスニペット。
  • JavaScript の関数を「引数そのまま返す化」

    関数を「引数そのまま返す化」 // sonomama の s Function.prototype.s = function(arg) this(arg); // 来の処理 return arg; // そのまま返す } 例1 hoge.method(); // ← この hoge を調べたい alertだけ alert(hoge); hoge.method(); 改行めんどいー。 console.logだけ console.log(hoge); hoge.method(); 改行めんどいー。 alert + そのまま返す化 alert.s(hoge).method(); // 1 ステートのまま console.log + そのまま返す化 console.log.s(hoge).method(); // 1 ステートのまま 例2 function hoge() { // ...略...

    JavaScript の関数を「引数そのまま返す化」
    wacky
    wacky 2007/05/18
    「引数をそのまま返す」ことで、いろいろ1行で書けるようにするFunctionオブジェクト拡張。コードスニペット。
  • [JavaScript] Safari では char/short などの予約語を変数名に使えない

    Kawa.netxp [JavaScript] Safari では char/short などの予約語を変数名に使えない Safari では char や short といった予約語を、JavaScript の変数名として使えないのですね。 IE や Firefox では動くのに、Safari だけ動かないプログラムがあり、ハマりました。。。 言語仕様的な予約語だから使わない、というのはモチロンだけど、『goto』とか『class』くらいは 直感的に何となく怪しそうだと分かるが、C 言語でもないし『char』が使えないとは思わなかったヨ。 2007/06/13 追記: Windows 版の Safari 3.0 の結果も追加しました! 参考:ECMA-262 - ECMAScript Language Specification に予約語の一覧が入っています。 下記の表で、右端の欄が「~

    wacky
    wacky 2007/05/16
    IE / Firefox / Safari / Operaで変数に使うとNGな予約語の一覧表。予約語なんだから使っちゃだめと思うけど・・・。
  • EXEを作ってみた: dara-j

    これはちょっと便利かも ゆるゆるとJSDBを試しているが、家のチュートリアル眺めてたら、「Standalone JSDB programs」という項があって、 c:\temp>pkzip program.zip main.js c:\temp>copy /b jsdb.exe+file.zip program.exe c:\temp>program.exe とか書いてあるじゃないですか。 さらに-helpオプションつけて起動してみたら、.zipアーカイブをパラメータに渡せるとあった。 D:\jsdb>jsdb -help JSDB 1.52Compiled Apr 27 2007. http://www.jsdb.org/ Copyright 2003-2006 by Shanti Rao and others. JSDB [-strict] [-werror] [-load file

    wacky
    wacky 2007/05/14
    JSDBのjsファイルをexeファイルにする方法。zipに固めてcopy /bでjsdb.exeと結合。
  • Google AJAX Feed API、簡単にフィードを描画できるクラスを追加:CodeZine

    Google AJAX Feed APIに「FeedControl」というクラスが追加された。 このクラスを利用すると、取得したフィードをWeb上に描画する際、定型的なフォーマットで簡単に表示させることができる。下はCodeZineとMarkeZineのRSSをタブ形式で表示させたサンプルだ。 <script type="text/javascript" src="http://www.google.com/jsapi?key=取得したKey"></script> <div id="feedControl">Loading...</div> <script type="text/javascript"> google.load("feeds", "1"); function initialize() { var feedControl = new google.feeds

    wacky
    wacky 2007/05/09
    Google AJAX Feed APIに追加されたフィード表示用コントロール「FeedControl」の紹介。
  • My experiments with .Net

    This browser is no longer supported. Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.

    My experiments with .Net
    wacky
    wacky 2007/05/09
    1つのファイルにJavaScriptとCSSをまとめて記述する方法。実用度ゼロだが念のため。
  • The Complete Javascript Number Reference

    Filed: Mon, Apr 30 2007 under Programming|| Tags: reference javascript numbers number math Javascript is not a typed language so it should come as no surprise that there are no specific integer or floating-point types, no short, long, byte, double, or any other type other languages use to define numbers. All numbers in Javascript are 64bit (8 bytes) floating point numbers which yields an effective

    wacky
    wacky 2007/05/05
    JavaScript Numberオブジェクトの リファレンス。(英語)
  • DOMのinnerHTMLに流し込む - Thousand Years

    Tipsです。JSmartyで処理した結果をDOMのinnerHTMLに流し込む方法のご紹介。現在、JSmarty0.4系開発中。 JSmarty#fetchの利用 tpl = new JSmarty(); tpl.assign("foo","Hello World!!"); document.getElementById('hoge').innerHTML = tpl.fetch("string:{$foo}"); PHPやっていてdisplayばかり使っているのでfetch利用わすれちゃいますが…JSmary#fetchやSmarty#fetchともにテンプレート処理してその結果を返すという仕様です。JSmartyではdisplayよりfetchのほうを多様するかと思います。 JSmarty.System.print()のハック JSmarty.System.print = funct

    DOMのinnerHTMLに流し込む - Thousand Years
    wacky
    wacky 2007/05/04
    JavaScriptテンプレートエンジン「JSmarty」のdisplayメソッドをdocument.writeからinnerHTML書き換えに変更するTips。
  • FC2Blog - 404 Error

    Page not found ご指定のファイルが見つかりませんでした 30秒後にトップページへ移動します

    wacky
    wacky 2007/05/04
    sliceメソッドでArrayの全要素を一発コピー。
  • 404 Blog Not Found:Digest - 今日にでも使うべきJavaScriptの7つのテクニック

    2007年04月25日12:00 カテゴリLightweight LanguagesBlogosphere Digest - 今日にでも使うべきJavaScriptの7つのテクニック 良質の記事だけに全訳したかったのだけど、時間もないので紹介と抄録。 Digital Web Magazine - Seven JavaScript Techniques You Should Be Using Today サンプルコードは、適宜書き換えてあります。 1. Branch when possible - 分岐はなるはやで これは実例を見た方が早いでしょう。クロスブラウザー対応のaddListener()を考える。機能だけを考えれば、以下でOK。 function addListener(el, type, fn) { if ( window.addEventListener ) { el.addE

    404 Blog Not Found:Digest - 今日にでも使うべきJavaScriptの7つのテクニック
    wacky
    wacky 2007/04/25
    JavaScriptテクニック集。実行時の分岐回数を減らす、boolキャスト、イベント委譲、コールバック関数を渡せるgetElementsByXXXXを作る、グローバル変数の汚染を防ぐカプセル化、など。
  • Javascript Dates-The Complete Reference

    Filed: Mon, Apr 23 2007 under Programming|| Tags: reference date javascript julian countdown Of all the core Javascript objects, I find Dates to be the most fascinating. Once you learn a few small tricks everything about Javascript Dates just seem to fall into place and you find that there's really nothing at all that you can't do with them, quickly, and easily. This reference will cover the J

    wacky
    wacky 2007/04/25
    JavaScript Dateオブジェクトの リファレンス。(英語)
  • IBM Developer

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    IBM Developer
    wacky
    wacky 2007/04/22
    Ajaxアプリケーションのコーディングによくある間違いと修正方法のまとめ。
  • EfficientJavaScript - Dev.Opera - 効率的な JavaScript

    EfficientJavaScript - Dev.Opera - 効率的な JavaScript 目次 この文書について 効率的な JavaScript ECMAScript eval や Function のコンストラクタを使うのはやめよう eval を書き換えよう 関数を使いたいなら function を使おう with を使うのはやめよう 性能を決める関数で try-catch-finally を使うのはやめよう eval と with は隔離しよう グローバル変数を使うのはやめよう 暗黙のオブジェクト変換に気をつけよう 性能を決める関数で for-in を使うのはやめよう 文字列は累積スタイルで使おう プリミティブの操作は関数呼び出しより速い setTimeout() や setInterval() には文字列でなく関数を渡そう DOM 再描画と再フロー 再フローの回数をでき

    wacky
    wacky 2007/04/22
    実行速度を上げる効率的なJavaScriptの書き方。ECMAScript構文からのアプローチ、DOM利用からのアプローチ。
  • The Complete Javascript Strings Reference

    Javascript Strings are deceptively complex constructs. There are actually two different types of strings -- String Literals and String Objects -- and they both behave somewhat differently even while trying to masquerade as the other. Strings, in addition to having some pretty funky methods of dubious usefulness, have a great many oversights and shortcomings which can be smoothed over with a fe

    wacky
    wacky 2007/04/20
    JavaScript Stringオブジェクトの リファレンス。(英語)