Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/407.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/268.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JQuery&;浏览器兼容性:焦点_Javascript_Jquery_Internet Explorer 7_Cross Browser_Opera - Fatal编程技术网

Javascript JQuery&;浏览器兼容性:焦点

Javascript JQuery&;浏览器兼容性:焦点,javascript,jquery,internet-explorer-7,cross-browser,opera,Javascript,Jquery,Internet Explorer 7,Cross Browser,Opera,好吧,我似乎偶然发现了另一个JQuery问题,但我认为这更多的是浏览器问题。下面的代码似乎在除IE7和Opera之外的所有浏览器中都能正常工作 function inputs() { $('#search').css({opacity: .25}).hoverIntent( function() { $(this).stop(true,true).animate({opacity: 1}, 500 );

好吧,我似乎偶然发现了另一个JQuery问题,但我认为这更多的是浏览器问题。下面的代码似乎在除IE7和Opera之外的所有浏览器中都能正常工作

function inputs() {
$('#search').css({opacity: .25}).hoverIntent(   function() { 
                                $(this).stop(true,true).animate({opacity: 1}, 500 );
                            },
                            function() {
                                if(!$('#mod_search_searchword').is(':focus') ) {
                                    $('#search').stop().delay(500).animate({opacity: .25}, 500 );
                                }
                            }
                        );
$('#search').focusout(function(){$(this).stop(true,true).animate({opacity: .25}, 500 );});
}

效果很简单。。。我只想这样,一旦搜索输入字段悬停以提高其不透明度,那么当其悬停时,将恢复到原始不透明度,但如果输入字段处于活动状态,则不会执行悬停,直到它们聚焦。但出于某些原因:opera或IE7似乎并不认可专注。有解决办法吗?

试试这个

setTimeout(function() { document.getElementById('mod_search_searchword').focus(); }, 10);

或者您也可以使用:active

我在最新的jQuery文档中没有找到:focus选择器


您必须扩展jQuery才能使用此功能。回答

我认为解决方案不是我想要的。我不想强迫你集中注意力。。。我只想让safari和IE7知道它是否专注。。。我也试过:主动,但那也不起作用这是一个猜测。我不确定它是否会起作用。如果(:active)那么setTimeout().Nop仍然不行,我尝试了许多不同的组合都没有成功。。。我的上帝javascript正在成为我遇到的最笨拙的脚本语言。。。我这样说,它完全不理解简单的逻辑。另外,如果某些元素的条件看起来不可能,我想我不能像责备浏览器程序员那样责备语言。。。要么他们在那里捡起了什@并坚持标准,要么一个浏览器主宰一切。。。在那之前,我们将一直在这些网站上寻找解决方案好吧,经过几个小时的头脑风暴,我终于想出了一个解决方案,老实说,我真不敢相信我花了这么长时间才意识到。。。但是对于任何有同样问题的人。。。我刚刚声明了一个var=false。。然后,如果启动了focusin,然后将var转换为true,则悬停将有,如果(var==false)转换为exceute fade else do nothing…:focus在IE7中从未工作过,仅在IE8中受支持。它在Opera中起作用,所以我不知道有什么问题。Yh我也不明白关于Opera的问题,我知道IE7不支持它,但我想JQuery可能会以不同的方式解释它。请注意,我对javascript非常陌生,只是尝试比较一个值或bool变得更加困难了…谢谢你的回答和你的权利。。。但我发誓我在文件里看到了。。。但我一定是下意识地认为它就在那里,在那里摆弄了太多东西。。但它适用于除Opera和IE7之外的所有浏览器,所以它一定有一定的真实性。。。不管怎样,我试图限制插件加载的开销,我的解决方案加上几行代码就比一个插件多出几百行。。谢谢你