Używam Flowplayer jquery narzędzia plugin http://flowplayer.org/tools/tooltip.htmlŁączenie/rozłączanie obiekt jQuery do elementu
1) Chcę podpowiedź być tworzone, gdy użytkownik kliknie na elemencie.
2) Gdy użytkownik kliknie na inny element, stara etykietka musi być odłączone (skreślony)
3) Nowa etykietka powinny być tworzone (lub stary przeniósł się) dla klikniętego elementu
4) Tak więc powinna być < = 1 etykieta narzędzia na stronie
Czy możesz mi pomóc?
Oto kod, działa autonomiczny
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html><head>
<title>jQuery tooltip</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script src="http://cdn.jquerytools.org/1.1.2/full/jquery.tools.min.js"></script>
<script type="text/javascript">
/******* THIS FUNCTION IS JUST FOR TEST, REMOVE IT LATER *********/
$(document).ready(function() {
$("#_2").tooltip({
effect: "slide",
tip: '.tooltip' ,
position: 'bottom center'
});
});
/******* THIS FUNCTION IS JUST FOR TEST, REMOVE IT LATER *********/
/** The code below is not working as I expect, it doesn't MOVE tooltip **/
var old_id;
//first time - create tooltip
function my_create(id){
$("#"+id).tooltip({
effect: "slide",
tip: '.tooltip',
position: 'bottom center'
});
}
//next times - move tooltip to other element
function my_unlink(id){
$("#"+id).unbind("mouseover");
//todo
}
function my_link(id){
//todo
}
//THE MAIN FUNCTION
function do_tip(new_id){
if(old_id){
my_unlink(old_id);
my_link(new_id);
alert(new_id);
}
else
my_create(new_id);
old_id=new_id;
//new_id.focus();
}
</script>
<style>
.tooltip {
display: none;
background:transparent url(http://flowplayer.org/tools/img/tooltip/black_arrow_bottom.png);
font-size:14px;
height:70px;
width:160px;
padding:25px;
color:#fff;
}
h1 {
width: 400px;
text-align: center;
background-color: yellow;
}
</style>
</head>
<body>
<h1 onclick="do_tip(this.id)" id="_1">John</h1>
<h1 onclick="do_tip(this.id)" id="_2">Mary</h1>
<h1 onclick="do_tip(this.id)" id="_3">Dan</h1>
<h1 onclick="do_tip(this.id)" id="_4">Paul</h1>
<h1 onclick="do_tip(this.id)" id="_5">Kim</h1>
<div class="tooltip">There should be only one tooltip on a page!</div>
</body></html>
Czy wezwanie do tooltip() zwracają cokolwiek? Czy istnieje obiekt reprezentujący tooptip, który może mieć metodę usuwania lub usuwania? – ironfroggy
1) wywołanie tooltip() zwraca obiekt jquery i może również zwrócić API specyficzne dla biblioteki. 2) Nie, nie ma delete() destructor w bibliotece = ( – Dan