Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][JavaScript]fancybox+clip yt
Forum PHP.pl > Forum > Przedszkole
ghastblood
Witam,
mam taki mały problem nie znam się za bardzo na javascript. Próbuje wstawić taki kod
  1. $('[id=yt]').click(function() {
  2. $.fancybox({
  3. 'padding' : 0,
  4. 'autoScale' : false,
  5. 'transitionIn' : 'none',
  6. 'transitionOut' : 'none',
  7. 'title' : this.title,
  8. 'width' : 680,
  9. 'height' : 495,
  10. 'href' : this.href.replace(new RegExp("watch\\?v="., "i"), 'v/'),
  11. 'type' : 'swf',
  12. 'swf' : {
  13. 'wmode' : 'transparent',
  14. 'allowfullscreen' : 'true'
  15. }
  16. });]


do w echo "";

niestety zwraca mi błąd Parse error: syntax error, unexpected T_STRING in fancybox_head.php on line 59

przez "" w tej linii ['href' : this.href.replace(new RegExp("watch\\?v="., "i"), 'v/'),]

jak zmienić funkcję żeby poprawnie działała.

Nie interesuje mnie metoda wstawiania funkcji poza php

.
matino
Nie wiem po co Ci ta kropka, ale bez niej i bez nawiasu kwadratowego na końcu nie ma błędów:
  1. 'href' : this.href.replace(new RegExp("watch\\?v=", "i"), 'v/'),

  1. });
ghastblood
hmm skrypt dział w html a jak jest już w echo ""; to wywala błąd że jest zła składnia

to cały kod
  1. <?php
  2. add_to_head("<link rel=\"stylesheet\" type=\"text/css\" href=\"".INCLUDES."fancybox/jquery.fancybox-1.3.1.css\" media=\"screen\" />
  3. <script type=\"text/javascript\" src=\"".INCLUDES."fancybox/jquery.fancybox-1.3.1.js\"></script>
  4. <script type=\"text/javascript\" src=\"".INCLUDES."fancybox/jquery.easing-1.3.pack.js\"></script>
  5. <script type=\"text/javascript\" src=\"".INCLUDES."fancybox/jquery.easing-1.3.1.pack.js\"></script>
  6. <script type=\"text/javascript\" src=\"".INCLUDES."fancybox/jquery.mousewheel-3.0.2.pack.js\"></script>
  7. <script type='text/javascript'>
  8. $(document).ready(function() {
  9. $('[rel=tek]').fancybox({
  10. 'transitionIn' : 'elastic',
  11. 'transitionOut' : 'elastic',
  12. 'speedIn' : 600,
  13. 'speedOut' : 200,
  14. 'overlayShow' : true
  15. });
  16. $('[rel=grup]').fancybox({
  17. 'transitionIn' : 'elastic',
  18. 'transitionOut' : 'elastic',
  19. 'titlePosition' : 'over',
  20. 'speedIn' : 600,
  21. 'speedOut' : 200,
  22. 'overlayShow' : true
  23. });
  24. $('[class=url]').fancybox({
  25. 'width' : '90%',
  26. 'height' : '90%',
  27. 'autoScale' : false,
  28. 'transitionIn' : 'none',
  29. 'transitionOut' : 'none',
  30. 'type' : 'iframe'
  31. });
  32. $('[id=karakecili]').fancybox({
  33. 'padding' : 0,
  34. 'transitionIn' : 'elastic',
  35. 'transitionOut' : 'elastic'
  36. });
  37. $('[id=yt]').click(function() {
  38. $.fancybox({
  39. 'padding' : 0,
  40. 'autoScale' : false,
  41. 'transitionIn' : 'none',
  42. 'transitionOut' : 'none',
  43. 'title' : this.title,
  44. 'width' : 680,
  45. 'height' : 495,
  46. 'href' : this.href.replace(new RegExp("watch\\?v=", "i"), 'v/'),
  47. 'type' : 'swf',
  48. 'swf' : {
  49. 'wmode' : 'transparent',
  50. 'allowfullscreen' : 'true'
  51. }
  52. });
  53.  
  54. return false;
  55. });
  56. });
  57. </script>");
  58. ?>
  59.  


chciał bym osiągnąć efekt taki jak na stronie fanybox blog punkt 4 yt clip
matino
Zamień wszystkie ' na " i echo powinno działać (tylko echo '...' a nie echo "...")
ghastblood
powinno a nie działa, teraz nie zwraca błędu ale działa jak zwykły odnośnik.

  1. <?php
  2.  
  3. add_to_head('<link rel=\"stylesheet\" type=\"text/css\" href=\"".INCLUDES."fancybox/jquery.fancybox-1.3.1.css\" media=\"screen\" />
  4. <script type=\"text/javascript\" src=\"".INCLUDES."fancybox/jquery.fancybox-1.3.1.js\"></script>
  5. <script type=\"text/javascript\" src=\"".INCLUDES."fancybox/jquery.easing-1.3.pack.js\"></script>
  6. <script type=\"text/javascript\" src=\"".INCLUDES."fancybox/jquery.easing-1.3.1.pack.js\"></script>
  7. <script type=\"text/javascript\" src=\"".INCLUDES."fancybox/jquery.mousewheel-3.0.2.pack.js\"></script>
  8. <script type="text/javascript">
  9. $(document).ready(function() {
  10. $("#yt").click(function() {
  11. $.fancybox({
  12. "padding" : 0,
  13. "autoScale" : false,
  14. "transitionIn" : "none",
  15. "transitionOut" : "none",
  16. "title" : this.title,
  17. "width" : 680,
  18. "height" : 495,
  19. "href" : this.href.replace(new RegExp("watch\\?v=", "i"), "v/"),
  20. "type" : "swf",
  21. "swf" : {
  22. "wmode" : "transparent",
  23. "allowfullscreen" : "true"
  24. }
  25. });
  26.  
  27. return false;
  28. });
  29. });
  30. </script>');
  31. ?>

matino
  1. add_to_head('<link rel=\"stylesheet\" type=\"text/css\" href=\"".INCLUDES."fancybox/jquery.fancybox-1.3.1.css\" media=\"screen\" />
  2. <script type=\"text/javascript\" src=\"".INCLUDES."fancybox/jquery.fancybox-1.3.1.js\"></script>
  3. <script type=\"text/javascript\" src=\"".INCLUDES."fancybox/jquery.easing-1.3.pack.js\"></script>
  4. <script type=\"text/javascript\" src=\"".INCLUDES."fancybox/jquery.easing-1.3.1.pack.js\"></script>
  5. <script type=\"text/javascript\" src=\"".INCLUDES."fancybox/jquery.mousewheel-3.0.2.pack.js\"></script>

\" zamień na "
". zamień na '.
." zamień na .'
ghastblood
faktycznie nie zauważyłem takiego błędu. Dobra teraz pojawia mi się biały fancybox ale nie pokazuje filmiku z yt

  1. <?php
  2.  
  3. add_to_head('<link rel="stylesheet" type="text/css" href="'.INCLUDES.'fancybox/jquery.fancybox-1.3.1.css" media="screen" />
  4. <script type="text/javascript" src="'.INCLUDES.'fancybox/jquery.fancybox-1.3.1.js"></script>
  5. <script type="text/javascript" src="'.INCLUDES.'fancybox/jquery.easing-1.3.pack.js"></script>
  6. <script type="text/javascript" src="'.INCLUDES.'fancybox/jquery.easing-1.3.1.pack.js"></script>
  7. <script type="text/javascript" src="'.INCLUDES.'fancybox/jquery.mousewheel-3.0.2.pack.js"></script>
  8. <script type="text/javascript">
  9. $(document).ready(function() {
  10. $("#yt").click(function() {
  11. $.fancybox({
  12. "padding" : 0,
  13. "autoScale" : false,
  14. "transitionIn" : "none",
  15. "transitionOut" : "none",
  16. "title" : this.title,
  17. "width" : 680,
  18. "height" : 495,
  19. "href" : this.href.replace(new RegExp("watch\\?v=", "i"), "v/"),
  20. "type" : "swf",
  21. "swf" : {
  22. "wmode" : "transparent",
  23. "allowfullscreen" : "true"
  24. }
  25. });
  26.  
  27. return false;
  28. });
  29. });
  30. </script>');
  31. ?>
matino
Musisz pokazać kod HTML zawierający element z id="yt"

Takie coś powinno działać:
  1. <a href="http://www.youtube.com/watch?v=071KqJu7WVo&feature=player_embedded#at=41" title="Test" id="yt">Test</a>
ghastblood
  1. <a href="http://www.youtube.com/watch?v=071KqJu7WVo&amp;feature=player_embedded" title="'Zombieland' Trailer" id="yt">Try now</a>


skrypt i link działa w html a w php już nie.
matino
Proponuję zapoznać się z podstawami PHP (cudzysłowy pojedyncze i podwójne)
  1. echo '<a href="http://www.youtube.com/watch?v=071KqJu7WVo&amp;feature=player_embedded" title="Zombieland Trailer" id="yt">Try now</a>';
ghastblood
znam podstawy podałem link jaki umieszczam w bazie danych. News jest wyświetlany za pomocą zmiennej sprawdzałem już cudzysłów podwójny i pojedynczy lecz niestety nie działa dalej.
matino
W linku, który podałeś wcześniej, w title masz pojedynczy cudzysłów. Albo go wywal albo potraktuj \.
ghastblood
dodałem sobie takiego newsa

  1. jeżeli w kodzie jest echo "";to ten link powinien być dobry
  2. <a id='yt' href='http://www.youtube.com/watch?v=071KqJu7WVo&amp;feature=player_embedded'>link1</a>
  3. a jeżeli jest echo ''; to ten link powinien działać
  4. <a id="yt" href="http://www.youtube.com/watch?v=071KqJu7WVo&amp;feature=player_embedded">link2</a>


link 1 zwraca mi fancybox bez filmiku
link 2 działa jak zwykły odnośnik
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.