Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript]łączenie skryptów
Forum PHP.pl > Forum > Przedszkole
nikestylex7
Witam. Mam problem ponieważ napisałem skrypt który otwiera mi okno dialogmodal w którym mam formularz i drugi skrypt który wyświetla dymki czyli tooltipy po najechaniu. Skrypty działają tzn dialog działa zawsze a tooltip tylko jak pracuje na dom bo gdy chce aby tooltip działał w tym dialogu to nie działa.

  1. $(document).ready(function(){
  2. $('#RegDialogRegister').click(function() {
  3. openDialog('#RegDialog');
  4. });
  5. $('#RegDialog')
  6. .find('.cancel')
  7. .live('click', function() {
  8. closeDialog(this);
  9. })
  10. .end()
  11. .find('.cancel')
  12. .live('click', function() {
  13. // Clicked disagree!
  14. console.log('clicked disagree!');
  15. });
  16. });
  17.  
  18. function openDialog(selector) {
  19. $(selector)
  20. .clone()
  21. .show()
  22. .appendTo('#RegDialogOverlay')
  23. .parent()
  24. .fadeIn('fast');
  25. }
  26.  
  27. function closeDialog( selector ) {
  28. $(selector)
  29. .parents('#RegDialogOverlay')
  30. .fadeOut('fast', function() {
  31. $(this)
  32. .find('.dialog')
  33. .remove();
  34. });
  35. }


i tooltip

  1. $(document).ready(function(){
  2. $('.RegDialogTitle').hover(function(e){
  3. // Hover over code
  4. var titleText = $(this).attr('title');
  5. $(this)
  6. .data('tipText', titleText)
  7. .removeAttr('title');
  8.  
  9. $('<p class="tooltip"></p>')
  10. .text(titleText)
  11. .appendTo('#RegDialogOverlay')
  12. .css('top', (e.pageY - 10) + 'px')
  13. .css('left', (e.pageX + 20) + 'px')
  14. .fadeIn('slow');
  15. }, function() {
  16. // Hover out code
  17. $(this).attr('title', $(this).data('tipText'));
  18. $('.tooltip').remove();
  19. }).mousemove(function(e){
  20. // Mouse move code
  21. $('.tooltip')
  22. .css('top', (e.pageY - 10) + 'px')
  23. .css('left', (e.pageX + 20) + 'px');
  24. });
  25. });
Damonsson
Skoro Dialog jest dodawany późnie do DOM, a tooltip działa dla document ready, to po prostu tooltip nie widzi tego.
Musisz dać tolltip w dialog i operować na tym elemencie, albo osobno ale wtedy działać live na DOM. Więc coś w stylu:

[JAVASCRIPT] pobierz, plaintext
  1. $('body').on('hover', '.RegDialogTitle', function(e){
[JAVASCRIPT] pobierz, plaintext

zamiast:
[JAVASCRIPT] pobierz, plaintext
  1. $('.RegDialogTitle').hover(function(e){
[JAVASCRIPT] pobierz, plaintext
nikestylex7
zmieniłem te linie kodu lecz dalej nic. Inne sugestie ?
Damonsson
pokaż w jsfiddle.net
nikestylex7


http://jsfiddle.net/JDabW/3/

?
Damonsson
http://jsfiddle.net/JDabW/4/

Git?
nikestylex7
Właśnie nie bo tytuły dalej się nie wyświetlają. Każdy tytuł który jest przy inpucie powinien się pojawiać
Damonsson
Akcja się wykonuje: alerty. A co tam później mieszasz, że nie działa, to ja nie wiem.


edit: http://jsfiddle.net/JDabW/5/

Baw się dalej, to są podstawy podstaw.
nikestylex7
dzięki pozmieniałem u zyskałem mój efekt

http://jsfiddle.net/JDabW/6/
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.