Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [jQuery] Jak skopiować kod JavaScript z kodu strony?, ... jak skopiować, kiedy html(), clone() nie działa.
djerk
post 21.07.2008, 20:43:30
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 11.07.2008
Skąd: 34N, 72E

Ostrzeżenie: (0%)
-----


Witam. Otóż mam pewną stronę na której jest zamieszczony kod JavaScript. Wszystko tutaj pisane jest z palca, ale zainteresowani powinni wiedzieć o co chodzi.

Przykładowa strona wygląda tak:
Kod
<html>
<head>
<title>Strona</title>
</head>
<body>
  <p>Hello world</p>
  <script type="text/javascript" src="skrypt.js"></script>
</body>
</html>


Sprawa wygląda tak, że stosowanie jQuery("body").html() albo jQuery("body").clone(true) zwaracają tylko:
Kod
<p>Hello world</p>


Żadne z nich nie zwraca jednak kodu JavaScript. Zrobiłem już nawet coś takiego:

Kod
        jQuery("script").each(function() {
            jQuery(this).prependTo("html");
        } );


Próbowałem już różnych środków, ale jQuery upiera się tylko na kopiowaniu DOM i nie chce za nic mi skopiować JavaScriptu :(. Ma ktoś jakiś pomysł?


EDIT ######################


Dobra, skorzystałem z tego: <a href="http://plugins.jquery.com/project/FullHTML" target="_blank">http://plugins.jquery.com/project/FullHTML</a> i napisałem:

Kod
function getTagHtml(objElement) {
    var content = jQuery(objElement).html();
    var attribs = jQuery(objElement)[0].attributes;
    var tagName = jQuery(objElement)[0].tagName.toLowerCase();
    var text = '<'+tagName;

        for( var i = 0; i < attribs.length; i++ ) {
            var attrName = attribs[i].nodeName;
            text += ' ';
            text += attrName;
            text += '="'
            text += $(objElement).attr(attrName);
            text += '"';
        }

    text += '>';
    text += content;
    text += '</'+tagName+'>';
    return text;
}


Może komuś się przyda :). Taka prowizora, ale działa ;].

Ten post edytował djerk 21.07.2008, 21:08:39
Go to the top of the page
+Quote Post
paziek
post 23.07.2008, 13:30:18
Post #2





Grupa: Zarejestrowani
Postów: 207
Pomógł: 25
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


No a zwykłe innerHTML nie załatwia sprawy?
Chyba, że chcesz wyciągnąć również zawartość skrypt.js i walnąć go inline, wtedy może faktycznie krótsza będzie taka funkcja (nie licząc tych linijek i obniżenia wydajności przez bibliotekę jQuery).
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 11:51