jQueryコードがあります。これは、特定のポイントまで動作すると期待しています。 HereはフィドルですクリックしてjQueryを無効にするホバーを無効にする
3つのメニュー項目を上に移動すると、黒い四角と追加の情報が黄色のボックスに表示されます。 メニュー1 & 3をクリックすると、メニューの前に緑色の円が表示されます。 メニュー2をクリックすると、検索バーも表示され、やや遅れてフォーカスが得られます。
これまではすべて問題ありません。
は、私は、例えば、欲しい:
-when「menu_item'_2がクリックされると私は黄色の分野では、別の項目の上にマウスを離れて移動 『info_2』示されなければなりません。
クリックが完了した後、何とかホバーをドロップする必要があります。 そして別のmenu_itemをクリックすると、黄色のボックスに対応する情報が表示されます。
私はjQueryの専門家ではないので、コードは別の方法で行う必要があります。
とにかく、ありがとうございます!
$(function() {
$("#search").hover(
function() {
$("#search_info").show();
$("#arrow").show().css('top', 230);
$("#fade_search").animate({ opacity: 0.4},50);
},
function() {
$("#arrow, #search_info").hide();
$("#fade_search").animate({ opacity: 1},50);
}).click(function(e) {
$("#activated").show().css('top', 232);
var focusDelay = $("input[type=text]").fadeIn(100);
setTimeout(function(){
$(focusDelay).focus();
},1000);
e.preventDefault();
});
$("#list").hover(
function() {
$("#list_info").show();
$("#arrow").show().css('top', 205);
$("#fade_list").animate({ opacity: 0.4},50);
},
function() {
$("#arrow, #list_info").hide();
$("#fade_list").animate({ opacity: 1},50);
}).click(function(e) { show up
$("#activated").show().css('top', 209);
e.preventDefault();
});
$("#program").hover(
function() {
$("#program_info").show();
$("#arrow").show().css('top', 255);
$("#fade_program").animate({ opacity: 0.4},50);
},
function() {
$("#arrow, #program_info").hide();
$("#fade_program").animate({ opacity: 1},50);
}).click(function(e) {
$("#activated").show().css('top', 261);
e.preventDefault();
});
});
ただ、いくつかの明確化を得るために:あなたは代わりに、それはその後、唯一のメニューのクリックでアクティブにする必要があり、一度メニュー項目のいずれかをクリックした後にテキストがホバーに表示すべきではありません? –
はい、それは本当です。クリックすると、対応するメニュー項目のテキストが表示されます。 – marchello
私は明確な例を使ってきれいなソリューションを開発しています。 :) –