Мне нравится ответ Ори, но прикрути его, я уже написал это. В любом случае, вы хотите держаться подальше от «заблокированной» глобализации и обернуть все это в плагин (вы уверены, что его уже нет?).
Style:
#pincontent {
display: none;
border: 1px solid black;
}
#pin, #close {
cursor: pointer;
}
Код:
$(document).ready(function() {
$('#pinmenu').data('pinned', 0);
$('#pintrigger').mouseover(function() {
$('#pincontent').show();
});
$('#pinmenu').mouseleave(function(evt) {
if ($('#pinmenu').data('pinned') !== 1) {
$('#pincontent').hide();
}
});
$('#pin').click(function() {
var pinned = $('#pinmenu').data('pinned');
if (pinned === 0) {
$('#pin').css('color', 'red');
$('#pinmenu').data('pinned', 1);
} else {
$('#pin').css('color', 'black');
$('#pinmenu').data('pinned', 0);
}
});
$('#close').click(function() {
$('#pincontent').hide();
$('#pin').css('color', 'black');
$('#pinmenu').data('pinned', 0);
});
});
HTML:
<div id='pinmenu'>
<div id='pintrigger'>My Trigger</div>
<div id='pincontent'>
<div><span id='pin'>Pin</span> <span id='close'>Close</span></div>
<div>Some text lalal</div>
</div>
</div>
<div>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</div>