2009-12-13 6 views
1

Je pensais avoir entendu quelque part que vous ne pouviez pas utiliser jquery pour manipuler le contenu ... Est-ce exact? Fondamentalement, j'ai un site qui a des paramètres comme p.php? D = mot-clé + mot-clé + mot-clé, et je voulais être en mesure de définir le titre en fonction de ce paramètre d ... Y at-il un moyen de le faire?jquery - Pouvez-vous manipuler des titres de page?

+8

Pourquoi ne pas tu fais ça avec PHP? – Gumbo

+4

Je suis d'accord que ce serait plus logique sur le serveur. –

+0

Peut-être qu'il fait une sorte de chose AJAXy et il veut que le titre de suivre l'état actuel de la page. Certes, c'est une chose étrange à faire, mais ...? –

Répondre

8
$('title').text("some text"); 
+0

cela ne fonctionnera pas dans IE6 ou les versions plus anciennes de Firefox (3.0). utilisez document.title. – artur

1

Si vous voulez vraiment faire sur le côté client avec JavaScript/JQuery, essayez ceci:

// get query arguments 
var $_GET = {}, 
    args = location.search.substr(1).split(/&/); 
for (var i=0; i<args.length; ++i) { 
    var tmp = args[i].split(/=/); 
    if (tmp[0] != "") { 
     $_GET[decodeURI(tmp[0])] = decodeURI(tmp.slice(1).join("")); 
    } 
} 

// change title of document 
if (typeof $_GET["d"] == "string") { 
    $("title").text($_GET["d"]); 
} 
+0

beaucoup de code pour un petit problème qui peut être résolu en utilisant document.title –

15

Vous ne avez pas besoin jQuery pour cela:

document.title = 'Some text'; 
+0

Vrai, mais si vous utilisez jQuery, il est bon d'être cohérent. – cobbal

+0

@cobbal Entièrement en désaccord. C'est mieux de faire ce qui est efficace. Créer un nouvel objet jQuery ('$()'), appeler une recherche 'title' non délimitée sur un document entier, puis appeler une fonction supplémentaire pour définir le titre est beaucoup moins efficace que de référencer la propriété d'un objet existant. C'est le meilleur moyen. –

+1

+1 David pour ne pas utiliser jQuery là où il n'est pas nécessaire. –

Questions connexes