ďťż

[javascript]Pobieranie znacznika TITLE strony

       

Podstrony


telcocafe

Jak w JavieScript pobrać wartość znacznika title dowolnej strony na serwerze zapisanej w zmiennej strona??
Wiem, że w php można zapisać treść strony do zmiennej i w ciągu szukać title i skopiować, a w JS ...??



window.title

// Dodano
Ach, to nie da się od tak. Musisz pobrać zawartość strony (na przykład Ajaksem), znaleźć w kodzie znaczniki i wyciągnąć z nich treść.
// Edytowano
@niżej:
Cóż, bez komputera będzie ciężko. Musisz poczekać na kogoś z nim :-P
Użytkownik andrzej_aa edytował ten post 23 marzec 2008, 17:46
a mógłbyś podać kod nie jestem dobry w js

taki prosty przykład:
<html> <head><title>tytuł</title> <script> alert(document.title) </script> </head> <body> </body> </html>
już wiesz?



Ale jak pobrać tytuł innej a nie otwartej strony.

Za pomocą ajaxa nie może pobrać zawartości czyjejś strony
function makeRequest(url) { http_request = false; if (window.XMLHttpRequest) { // Mozilla, Safari,... http_request = new XMLHttpRequest(); if (http_request.overrideMimeType) { http_request.overrideMimeType('text/xml'); // Przeczytaj o tym wierszu poniżej } } else if (window.ActiveXObject) { // IE try { http_request = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { http_request = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {} } } if (!http_request) { alert('Poddaję się :( Nie mogę stworzyć instancji obiektu XMLHTTP'); return false; } http_request.onreadystatechange = function() { alert(http_request.responseText); }; http_request.open('GET', url, true); http_request.send(null); } makeRequest('http://wookieb.pl');

Za to mozesz z poziomu php możesz to zrobić.
Robisz plik php pobierz.php który ma taki kod
<?php read_file($_GET['site']); ?>
W ajaxie żadasz wywołanie pliku pobierz.php?site=http://google.pl
Pobierz.php zwraca cie zawartość strony google.pl a w funkcji js która obsługuje skończone wywołanie ajaxa robisz
input=request.responseText; // tutaj dajesz zawartosć pobranej w ajaxie strony var matches=input.match(/(<title>(.*)<\/title>)/); alert(matches[2]); //znacznik title google.pl
Użytkownik polasek edytował ten post 24 marzec 2008, 17:18
Ale tytuł strony potrzebuję w fukncji w JS

No tak, zapomniałem o tym ograniczeniu :-) Ale wujek Google podpowiada, by użyć w takim wypadku ramki. Ładujesz stronę do ramki i odczytujesz tytuł.
// Edytowano
@niżej:
Właśnie chodzi o sposób client-side; bez użycia serwera.
Użytkownik andrzej_aa edytował ten post 24 marzec 2008, 16:55

Ale tytuł strony potrzebuję w fukncji w JS

A w czym ci podałem? W c++?

Czytaj dokładnie alert(matches[2]); //znacznik title google.pl

//EDIT Pobieranie title mozesz zrobic juz w samym pliku pobierz.php. A jak to zrobić? Użyj wyrażenia regularnego z js które ci podałem i będziesz miał. Można też użyć ramki o czym mówi andrzej.

//UP No chyba, że tak.
Użytkownik polasek edytował ten post 24 marzec 2008, 18:02
No właśnie, mam stronę w ramce i najlepiej było by odczytać tytuł z ramki. Jak to zrobić??

nazwa_ramki.document.title nie działa?

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.