Javascript-форум (https://javascript.ru/forum/)
-   Opera, Safari и др. (https://javascript.ru/forum/css-html-browser/)
-   -   Выпадающее меню в опере (https://javascript.ru/forum/css-html-browser/24705-vypadayushhee-menyu-v-opere.html)

Marv 11.01.2012 13:43

Выпадающее меню в опере
 
Написал простой скрипт на jquery для листания картинок с эффектом fade. Скрипт работает как полагается, во всех браузерах все нормально. Но вот в опере при двойном щелчке на кнопке назад .fadeSlide-prev, и только на ней (или при событии, которое она посчитает двойным щелчком) выделяется весь div с картинками и появляется контекстное меню. Как от этого избавиться?

верстка
<div class="fadeSlider-container" style="position: relative;">
  <ul class="fadeSlider-list" style="position: relative;">
  <!-- тут лежат картинки -->
    <li style="position:absolute; top:0; left:0; z-index:2"><img src="img.png" /></li>
    <li style="position:absolute; top:0; left:0; z-index:1"><img src="img1.png" /></li>
  </ul>
  <!-- две кнопки, кнопки лежат непосредственно поверх картинок-->
  <div style="position:absolute; left:0; top:50%; z-index:10;" class="fadeSlider-nav fadeSlide-prev"/>
  <div style="position:absolute; right:0; top:50%; z-index:10;"  class="fadeSlider-nav fadeSlide-next"/>
</div>

скрипт
function(direction){
  $data = this.data('fadeSlider');
  if($data.init == 1){
    $Els = this.children("li.fadeSlider-element");
    $($Els[$data.currentEl]).stop(true, true).fadeOut();
    if(direction == "prev"){
	  if($data.currentEl == 0) $data.currentEl = $Els.length - 1;
	  else $data.currentEl--;
	}else if(direction == "next"){
	  if($data.currentEl == $Els.length - 1) $data.currentEl = 0;
	  else $data.currentEl++;
	}
	$($Els[$data.currentEl]).stop(true, true).fadeIn();
  }
}

devote 11.01.2012 15:57

отменять событие по умолчанию

Marv 16.01.2012 09:47

return false?
не помогает


Часовой пояс GMT +3, время: 00:28.