7cc@はてなブログ

JavaScriptとかとか

Win10 全画面表示でタスクバーが残るときはWinキーを2度押す

Windows10では、ソフトを全画面表示にした際にタスクバーが前面に残ってしまう現象がたまに発生します。 ブラウザーを全画面表示にしているのにタスクバーが上になっている 対処 一度スタートメニューを開き、閉じる (エクスプローラの再起動はおすすめしま…

PowerShellでファイル属性操作

「読み取り専用」や「隠しファイル」の設定 Set-ItemProperty は使わないほうが楽 属性の実体は数値。ビット演算で求める 文字でキャストする方法もある attrib.exe を使ったほうが簡単 属性の取得 $item = gi .\file.txt $item.Attributes # Archive [int]$…

Chocolatey と PackageManagement(OneGet)

Chocolateyを使う方法は2つあります。 Chocolateyから choco install 7zip PackageManagementから install-package -name 7zip -ProviderName ChocolateyGet 2番目の方法がややこしく、Chocolateyではなく ChocolateyGet を使います。 GitHub - jianyunt/Cho…

Windows10 環境変数PATHの設定が「テキストの編集」モードになってしまう問題

Windows10ではPATHの設定がリスト形式になっていて視認性が上がっています。 しかしこれが従来の「テキストの編集」モードになってしまうことがあります。 原因 %USERPROFILE% 以外の変数が連続して使われるとリスト形式での編集ができなくなるようです。 リ…

VSCodeの文字コード自動判定を改善する

動機: "files.autoGuessEncoding"を有効化するとwindows-1252など望まないエンコードになるのを改善したい。 2019.11月現在、文字エンコードを指定するAPIは提供されていません。そのため強引な方法になります。 方法は2つあります。どちらもすることは同じ…

バッチファイル(cmd.exe)でオリジナルのコマンドを使う

batファイルでよく使われる @ECHO off のように、コマンド名の前にはアットマークを置くことができます。これはパスの通ったファイルに対しても有効です。例えば、 @calc で電卓が開きます。アットマークはいくらでも置けます。 @@@@@@@@calc でも電卓が開き…

.npmrcの設定はハイフン(-)かドット(.)か

デフォルトはハイフンです。なのになぜかドットでも npm init したときにはきちんと参照されます。 そのためかドットを使った .npmrc の紹介記事が散見されます。 <追記> npm 公式でも ハイフンとドットが混在していました。統一したほうが良いのでは…? npm-…

Windowのコマンドラインでドライブ変更 (Git shell)

普通のコマンドプロンプトと、Git Shellとで書式が異なる。`pushd c:/` なら両対応。

ニコニコ動画で、ユーザーIDからニックネーム(ユーザーネーム)を取得する

ポイント 公式のAPIが無い&公開されてはいないので、「マイページを直接叩くよりはマシ」という程度の認識で使う。 確実に取得する方法はないので、ユーザーネーム取得に失敗した時のためにダミーテキストを用意してやると良い。 戻り値が空文字やnullでエラ…

visibility: hidden と display: none の違いは2つ

CSS

この2つのCSSの違いについてはよく、「visibility: hiddenは空白を残す」ということだけ説明されている。しかし、詳しく説明するとそれ以外の違いもある。

多次元配列の再帰の記述

追記: 2018年現在は一度flattenしてから処理するのが良いと思います。 記述の方法が、for-loopで書くと1通りだが、イテレートメソッドだと2通りある。 どちらでもよいのだけれど、混ざるので整理。 for-loopとイテレートは完全に同じではないが、その点は割…

img.width, img.height と img.setAttribute("width"/ "height"

JSからサイズを設定する場合 OK img.width = "100" img.setAttribute("width", "100") img.setAttribute("width", "100px") NG img.width = "100px" IEとFirefoxで試して両方こうだった。罠くさい・・・ といっても、本来<image>のwidth, heightに入れられるのは数</image>…

ネイティブメソッドを判別する互換性

setTimeout, setIntervalを乗っ取って爆速にする - 素人がプログラミングを勉強…を踏まえて "prototype" in Arrayはすべてtrue "prototype" in Array.prototype.pushはすべてfalse "prototype" in function(){}はすべてtrue "prototype" in {native dom func…

(JavaScriptで使われる)数学の英語 数字編

JSで使われる数学に関した英語の和訳。 digit(s) 0-9の数字(0は除かれることも), notation 表記, integer 整数, decimal 小数 / 10進数, fixed-point number 固定小数点数, floating-point number 浮動小数点数, precision 精度

はてなブログのテーマのライセンスに、GPLが選べるようになりました

アナウンスは(まだ)無い。 なぜGPLが選べるようになったのか Hatena2 for はてなブログ - テーマ ストア - はてなブログ のように、「はてダ」、はてなダイアリーのテーマがいくつか「はてなブログ」に移植されている。CCライセンスで。しかしこれはGPLに…

IEで「オブジェクトを指定してください」のエラー

エラーメッセージを言い換えると分かった。 「オブジェクトを指定してください」 「オブジェクトが指定されていないよ」 「オブジェクトが無いよ」 「オブジェクトがundefinedだよ」 原因 3通りあるようだ 原因1 古いIEと文字コード IEの謎エラー対策(1) 「…

はてなブログでのMarkdownの不具合・仕様

不具合報告も兼ねて。 報告済み・仕様との回答を頂いたものは見出しに記載。 Markdownはパーサが色々有り、またサービスによって独自の機能を提供しているものもあるので、なかなか厄介だと思った。 はてな GitHub 普通の環境 の3つで試した。 普通の環境 は…

objectの中のobjectを書き換え不可にする

JavaScriptのオブジェクトを完全に書き換えできないようにするには、`Object.deepFreeze`と`Object.defineProperty`を併用する。

CSS transformが効かない

CSS

CSS transformの適用される要素は決まっていて、仕様ではtransformable elementsと呼ばれる。 そのため、他の要素に使おうとしても効かない。 transformable elements(変形可能要素) = transformが使える要素 Block-level elements (divとか) atomic inline-…

element.ownerDocument.defaultView.frameElement

複数のwindowを扱う場合。iframeとwindow,documentのトラバーサルについて。関連ワードownerDocument.defaultView, contentDocument.defaultView, window.frameElement

JavaScriptでグローバル変数になるものの、優先順位

要素のIDや、iframeのname属性もグローバル変数になる。

You might not need jQuery は間違いだらけ

追記: 文面を修正しました。 2018-05-21 すこし話題になっている(いた?)ようだが、jQueryを(読むだけで自分では)使ったことの無い私が気付いただけで間違いが10個あった。 サイトはここ GitHubにソースがある 見つけた間違い 60個あるうち10個 つまり全…

デバッグ時だけconsole出力したい

var debug = true if ( !window.console || !Function.bind ) { debug = false } var cl = debug? Function.prototype.bind.call(console.log, console) : function(){} usage cl(1, 2) console.log.applyだと出力箇所が関数定義場所になってしまうのでbind…

document.activeElement

focusのある要素を返す。 リンク、tabindex、IEでのdivなど互換性についても説明。

ownerDocument, document

JavaScriptのownerDocumentとは。 いつ使うのか。

element.onresize

まだ使えない。 element.addEventListner("resize", ... について

Google ChromeのCSSOMは相変わらず間違っている

追記 ver. 33.0.1750.117 m でCSSOMの実装が以前のバージョンに戻った。今は下記のエラーは表示されない しかしこの実装は間違っているので、将来的には変更があると思われる。 以下は追記以前の情報

IE9 開発者ツールの不具合 / デバッグ時の注意点

環境は全てIE9。10+では不明 IE9 console 開発者ツールを開いていないと、そこで止まる location.hash ローカルファイルだと、戻る/進むでロケーションバーに表示されなくなる。実際にはある。 非ascii文字のID + エンコードされたページ内リンク の :target…

addEventListenerのhandleEventについて

オブジェクト(指向)で使うようです。 syntax プロパティにhandleEventがあるオブジェクトを第二引数に渡す。 handleEventの値はfunction // 変数に入れて var foo = { val: 1, handleEvent(ev) { console.log(this.val++) } } document.addEventListener('cl…

xhr GETのキャッシュ

XMLHttpRequest GET のキャッシュについて ・・・なのだけれど、xhrだけではなく、キャッシュ全般にいえる話だった。 キャッシュの仕組みについては以下のリンク参照。 事例に学ぶWebシステム開発のワンポイント(12):ブラウザキャッシュでパフォーマンス…