そのため、大量のdivがあり、ユーザーがdivにカーソルを合わせたときにボタンを表示しています。ユーザーがボタンをクリックすると、何かが実行されます。現時点での問題は、IE でボタンをクリックすると、ボタンが消えて何もしないことです。互換モードがオンの場合、Chrome FF や IE でも動作します。コードは次のとおりです。
function highlightUnmarked ( field ) {
$( field ).addClass("hover-markedfields");
var selectedText = $('<div>').append( $( field ).clone() ).html();
if ( ( selectedText.search( 'triangle-isosceles' ) == -1 )
&& ( selectedText.search( 'triangle-isosceles-blue' ) == -1 ) ) {
var markButtonsDiv = document.createElement( "div" );
markButtonsDiv.id = "markButton";
var initialLink = document.createElement('a');
initialLink.setAttribute('href', '#');
initialLink.setAttribute('id', 'initial');
initialLink.onclick = function() { initial() };
var initialImg = document.createElement('img');
initialImg.setAttribute('src', '<?php echo Yii::app()->params['DIRECTORY_NAME'] ?>/images/initial.png');
initialLink.appendChild( initialImg );
markButtonsDiv.appendChild( initialLink );
$(field ).prepend( markButtonsDiv );
}
}
呼び出された関数は実行されません。関数の最初の部分としてアラートを配置しましたが、呼び出されていません。最悪のことは、エラーがスローされないことです。そのため、何が問題なのかわかりません。
以下は、呼び出される関数のコードです。ポップアップをスローするだけです。
function initial () {
$.blockUI({
message: $('#popup2'),
centerY: true,
css: {
top: ($(window).height() - 200) /2 + 'px',
left: ($(window).width() ) /2 + 'px',
width: '400px',
height: '',
margin:'50px 10px',
padding: '10px 20px 5px 5px',
color: 'black'
}
});
}
助けてくれてありがとう。
編集: 申し訳ありませんが、単純な間違いが FF での動作を妨げていました。