Ouvrir des popup paramétrées

Tagged:

Voici un petit script qui montre à la fois comment ouvrir une popup simplement mais également comment on peu facilement manipuler des objects Javascript ...

var Popup = {
	//Ici toutes les options que vous voulez
	options : {
		toolbar : 'no',
		location : 'no',
		status : 'no',
		menubar : 'no',
		directories : 'no',
		scrollbars : 'no',
		resizable : 'yes',
		copyhistory : 'no',
		width : 400,
		height : 300,
		screenX : 150,
		screenY : 150,
		top : 150,
		left : 150
	},
	open : function (url,name,options) {
		//Valable si vous utilisez Prototype
		this.options = this.options.extend(options || {});
 
		options = '';
		for (opt in this.options) {
			if (typeof(this.options[opt]) != 'function') {
				options += opt +'='+ this.options[opt] + ',';
			}
		}
		return window.open(url, name, options)
	}
};

Dans le cas ou vous utilisez Prototype vous pouvez utiliser l'extension d'objets c'est bien pratique dans ce cas ...

//Ouvrir une popup avec les paramètres par défaut
popup = Popup.open('fichier.html','maPopup',{});
 
//Ouvrir une popup avec des paramètres perso
popup = Popup.open('fichier.html','maPopup',{width :'25px'});

Voila :) si ça peut servir ... Pensez a structurer votre code javascript en objet, ça le rend plus clair, vous n'êtes pas obligé d'utiliser les concepts objets mais ça clarifie un peu de manipuler et de coder des objets ...

Comments

Question bête:
C'est ce genre de popup qui fait que mon Firefox se redimensionne alors que je voudrais qu'il soit toujours en plein écran et que je l'ai configuré tel que les pop-ups s'ouvrent toujours dans des nouveaux onglets ?
Enfin bref, chez quelqu'un qui a configuré son navigateur comme moi, toutes ses options ne servent à rien à part à l'énerver...

Je déteste le javascript, trop bordélique dans son code, pas vraiment standardisé, trop souvent mal utilisé, ou pour donner des effets qui sont sensé être gérés par le css. Sans compter que le navigateur ne le prend pas forcément en charge, ou que l'utilisateur l'a peut-être désactivé...
Je déteste les pop-ups, trop bordéliques, on se retrouve avec plein de fenêtres partout ou plein d'onglets, et puis on s'y retrouve plus... Vive le blocage des pop-ups.
Le site que je déteste le plus au monde:
www.infotec.be (voir "itinéraires")
La combinaison parfaite du bordel javascript avec le bordel des pop-ups pour donner un site tout pourri où les fonctionnalités visent tellement à empêcher l'utilisateur de faire des erreurs que le site devient presque inutilisable et que c'est énervant au plus haut point...
Un site sur lequel ils devraient prendre exemple:
sncb.be
Il y a un peu de flash mais ça n'empêche pas une bonne navigation. On entre ses paramètres comme on veut, en cas d'erreur le serveur fait des suggestions après l'envoi du formulaire. Si tout est correct, on a son itinéraire en quelques secondes...

Voilà, c'était juste un petit coup de gueule contre les pop-ups et le javascript, bonne route...

Je suis tout a fait d'accord sur le fait qu'un site internet commun à tout intérêt a privilégier le CSS et l'épuration au niveau JS ...
Aussi sur le fait que plein de gens utilisent le javascript en récoltant des trucs de droite et de gauche sans vraiment comprendre ce qu'ils font du coup ça vomis de partout ...

On dit ça du VB aussi ... par extension du PHP également ... Combien de site sont complètement in-maintenable en php ? Même fait par des pros ça veut rien dire, le langage permet la facilité, les développeurs sont fénéants ça file de la soupe qui fonctionne temporairement et qu'on remplace quand ça marche plus ...

Pour répondre a ta question : "oui c'est ce genre de popup la ;)" j'ai le même problème ... Cela dit dans une applications métier en php c'est plus qu'utile ... Un programme complexe ne tourne jamais que dans une seule fenêtre sinon on s'en sortirai jamais ... les options annexes sont toujours gérées par des fenêtres annexes ...

Le fait de bloquer le javascript ou les popups par conviction personnelle ne sert a rien selon moi ... On se marginalise et par conséquent on marginalise sa navigation ... Les gens qui n'aiment pas le CSS vont désactiver le CSS et raler parce que les sites ne fonctionnent plus alors ?

Si tu veux voir un monstre de salopries au niveau WEB va voir www.wanadoo.fr moi j'hallucine a chaque fois ... surtout avec IE t'as une pub de 20 secondes quand t'arrives !!!

Merci pour ce coup de gueule thématique ;) et pour tout ceux qui lisent, il a pas tout a fait tord, faites gaffe a ce que vous foutez dans vos pages ... (tiens ça me fait penser que ça fait un moment que je veux changer mon truc des derniers commentaires ...)