Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Atteint de JavaScriptite Aiguë [Cyril Durand]

Expert ASP.net Ajax et WCF, Cyril Durand parle dans son blog de point techniques sur ASP.net, ASP.net Ajax, JavaScript, WCF et .net en général. Cyril est également consultant indépendant, n'hésitez pas à le contacter pour de l'assistance sur vos projets

Actualités

  • Blog de Cyril DURAND, passionné de JavaScript, Ajax, ASP.net et tout ce qui touche au developpement Web Client-Side.

    N'hésitez pas à me contacter pour vos projets .net : architecture, accompagnement, formation, ...

    View Cyril Durand's profile on LinkedIn
    hit counters


    Expertise Commerce server et BizTalk

JavaScript et VML - Comment rajouter un namespace et un regle CSS dynamiquement

Pour utiliser la technologie VML dans nos pages HTML il est nécessaire de rajouter 2 choses : un namespace XML et une régle CSS, on se retrouve donc avec une page qui posséde ces éléments :

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml"> <head> <title>Untitled Page</title> <style type="text/css"> v\:* {behavior:url(#default#VML);} </style> </head> <body> <v:shape id="shape1" style="width:400px; height:400px;" coordSize="100,100" fillColor="red" path="m75,79 l97,84,12,72,74,53,97,50 xe"> </body> </html>

Si l'on veut rajouter du VML dynamiquement (via JavaScript) il est intéressant d'ajouter ces 2 lignes via du code afin de garder une source HTML "propre". Ces quelques lignes le font très bien :-) Tout d'abord je vérfie que le navigateur est bien IE (car VML fonctionne seulement sur IE :-() et regarde si le document n'a pas le namespace vml dans ce cas je le rajoute et créé une règle CSS tout en ayant créé une feuille de style si le document n'en avait pas.

if (Sys.Browser.agent == Sys.Browser.InternetExplorer && !document.namespaces['vml']){ document.namespaces.add('vml', 'urn:schemas-microsoft-com:vml'); var styleSheet = (document.styleSheets.length > 0) ? document.styleSheets[0] : document.createStyleSheet(); styleSheet.addRule('vml\\:*', 'behavior:url(#default#VML)'); }

Vous pouvez alors créer un nouvel élément VML de cette façon.

var graphicElement = document.createElement('vml:shape'); document.body.appendChild(graphicElement); with(graphicElement.style){ position = 'absolute'; top = '0'; left = '0'; width = '100px'; height = '100px'; } graphicElement.coordSize.x = 100; graphicElement.coordSize.y = 100; graphicElement.fillColor = 'red'; graphicElement.path = 'm75,79 l97,84,12,72,74,53,97,50 xe'

Pour en savoir un peu plus sur le VML je vous conseille l'excellent tuto d'Aurélien : Tutorial VML

Posted: mardi 21 novembre 2006 18:16 par cyril
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :

Commentaires

malek a dit :

une coquille dans l'url asp-php

# novembre 21, 2006 21:06

cyril a dit :

oups

Merci corrected :-)

# novembre 21, 2006 21:36
Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- Merci par Blog de Jérémy Jeanson le 10-01-2019, 20:47

- Office 365: Script PowerShell pour auditer l’usage des Office Groups de votre tenant par Blog Technique de Romelard Fabrice le 04-26-2019, 11:02

- Office 365: Script PowerShell pour auditer l’usage de Microsoft Teams de votre tenant par Blog Technique de Romelard Fabrice le 04-26-2019, 10:39

- Office 365: Script PowerShell pour auditer l’usage de OneDrive for Business de votre tenant par Blog Technique de Romelard Fabrice le 04-25-2019, 15:13

- Office 365: Script PowerShell pour auditer l’usage de SharePoint Online de votre tenant par Blog Technique de Romelard Fabrice le 02-27-2019, 13:39

- Office 365: Script PowerShell pour auditer l’usage d’Exchange Online de votre tenant par Blog Technique de Romelard Fabrice le 02-25-2019, 15:07

- Office 365: Script PowerShell pour auditer le contenu de son Office 365 Stream Portal par Blog Technique de Romelard Fabrice le 02-21-2019, 17:56

- Office 365: Script PowerShell pour auditer le contenu de son Office 365 Video Portal par Blog Technique de Romelard Fabrice le 02-18-2019, 18:56

- Office 365: Script PowerShell pour extraire les Audit Log basés sur des filtres fournis par Blog Technique de Romelard Fabrice le 01-28-2019, 16:13

- SharePoint Online: Script PowerShell pour désactiver l’Option IRM des sites SPO non autorisés par Blog Technique de Romelard Fabrice le 12-14-2018, 13:01