xmlタグ属性フィールドからの2つの16進値を比較する必要があります。これを試しています:
var fill = $(this).attr( "fill" );
// console.log( fill.toString(16) );
if ( fill === "#FF00FF" )
しかし、アイデアは機能していませんか?
xmlタグ属性フィールドからの2つの16進値を比較する必要があります。これを試しています:
var fill = $(this).attr( "fill" );
// console.log( fill.toString(16) );
if ( fill === "#FF00FF" )
しかし、アイデアは機能していませんか?
そこで2つの等号を使用する必要があると思います。これを試してください...
var fill = $(this).attr( "fill" );
if ( fill == "#FF00FF" )
それが機能しない場合は、おそらく$(this)を識別していません
attr
文字列を返します。それを呼び出す必要はありません( 'sは引数を取らないため、引数toString
は無視されます)。String
toString
あなたのコードはいくつかのことを想定しています:
属性が#hex形式で返されること(カラー値の場合、これは確実に真のクロスブラウザーではありません)。
それはすべて大文字になります。
値をログに記録したときに何が表示されるかわからないので、2番目の部分について説明します。
var fill = $(this).attr( "fill" );
if ( fill.toUpperCase() === "#FF00FF" )
塗りつぶしがカラーの場合、RGB形式で返される場合があります。そして、あなたがそれを記録するとき、あなたは書くtoString()
。RGB値と比較するか、文字列と比較します。fill.toString(16)