0

所以我有大量的 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 中工作。

4

1 回答 1

0

你的代码不能在 IE 中运行吗?如果你的代码甚至不能在 chrome 中运行,那么下面是解决方案......

Jquery UI 组件与 GoogleChrome 版本 18+ 兼容。这可能是您的问题。

于 2012-10-04T13:16:51.933 回答