Depuis son lancement, Prototype est devenu l'un des cadres JavaScript les plus considérés et utilisés autour.
Prototype est pas recommandé pour les petits projets (comme un site de 3 pages), mais il est parfait pour les grands sites ou applications Web JS-alimentés, principalement en raison de sa plus grande taille de code.
Le cadre a été testé et travailler avec Mozilla Firefox 1.5+, Internet Explorer 6+, Safari 2.0.4+, Opera 9.25+ et Google Chrome 1 +.
Cela donnera aux développeurs une grande marge de manœuvre dans la création d'applications multi-navigateur qui fonctionne un large éventail de scénarios
Ce qui est nouveau dans cette version:.
- Mise à jour à la dernière version de Sizzle pour de meilleures performances et de fixer un certain nombre de questions que nous avons vu dans la nature.
- Correction d'un problème dans les versions récentes d'IE où une vérification de la capacité interne a été le déclenchement par inadvertance un & quot; Cette page utilise Java & quot; dialogue.
- Correction d'un certain nombre de petits problèmes dans DOM-et méthodes liées à disposition.
Ce qui est nouveau dans la version 1.7.2.0:
- Updated~~V à la dernière version de Sizzle pour une meilleure performance et de fixer un certain nombre de questions que nous avons vu dans la nature.
- Correction d'un problème dans les versions récentes d'IE où une vérification de la capacité interne a été le déclenchement par inadvertance un & quot; Cette page utilise Java & quot; dialogue.
- Correction d'un certain nombre de petits problèmes dans DOM-et méthodes liées à disposition.
Ce qui est nouveau dans la version 1.7.1.0:
- DOM réécriture
- ECMAScript 5 compatibilité
- Correction d'un bug avec Element.setOpacity qui causait des problèmes dans IE9 et IE10 la prochaine.
- Correction de la façon dont nous sérialiser les valeurs de formulaire pour être plus précis à la façon dont les navigateurs fonctionnent.
Ce qui est nouveau dans la version 1.7:
- Assurez `Element # update` fonctionne avec le contenu de chaîne qui comprend une balise LINK dans Internet Explorer.
- Traiter un statut 304 HTTP comme une réponse positive.
- Handle tableaux creux correctement dans tableau `# _each` pour correspondre à un comportement avec haut-tableau` # Les forEach` de navigateurs (et ES5).
- Faites `Event.extend` travail avec les événements hérités IE dans IE 9.
- Arrêter appending `& _ = 'les paramètres de non-requêtes GET Ajax dans Safari. Nous ne soutenons aucune version de Safari pour lesquels cela est nécessaire.
- Assurez-vous `Form.focusFirstElement` ne soulève pas une exception sur les formes sans champs.
- Définir une propriété `relatedTarget` sur les événements mouseenter / MouseLeave étendus dans le système d'événements de l'héritage de IE.
- Fix comportement étrange avec `new Element ( 'select')` dans IE6-7.
- Extend éléments de bouton avec tout défini dans Form.Element.Methods. Assurez-éléments BUTTON sont parcourus en Form.getElements et sérialisé en Form.serialize.
- Vérifiez Object.isFunction retourne `false` pour les objets RegExp.
- comportement Revert Opera spécifique pour appeler Element # getStyle avec. (Left | right | top | bottom)
- Correction d'un problème avec l'Event # isMiddleClick et #isRightClick sur Safari et Chrome.
- Correction d'un problème où une requête Ajax dans IE retourne parfois 1223 au lieu de 204 comme le code d'état.
- Ajouter Object.isDate.
- cas Manipuler où `` document` ou document.documentElement` est passé dans Element # getOffsetParent. erreurs Fixes IE avec de nombreuses méthodes layout / positionnement.
- Enveloppez `element` dans` `$ pour Element # cumulativeOffset, #viewportOffset, #positionedOffset et #getOffsetParent.
Ce qui est nouveau dans la version 1.7 RC3:
- Cette version longue retardée inclut un support complet pour Internet Explorer 9.
Ce qui est nouveau dans la version 1.6.1:
- Évitez le déclenchement d'un avertissement lorsque Java est désactivé dans IE8 .
- Simplifier Chaîne # (un) escapeHTML et enlever leurs dépendances DOM.
- Mise à jour UnittestJS. modèle de test modifiy en conséquence.
- Supprimer redondante if dans Element # ReadAttribute.
- Ajouter des points-virgules manquants.
- Supprimer cher (pour un tel procédé de bas niveau) interne 'getClass' en faveur de comparaison plaine chaîne
- Fix 'PeriodicalExecuter' de sorte qu'il ne supprime les exceptions.
- Correction d'un problème lié à échapper à des sélecteurs pour querySelectorAll.
Ce qui est nouveau dans la version 1.6.1_rc3:
- Correction d'une variété de caractères non-ASCII et similaires
- Ajouter Chrome 1+ à la liste des navigateurs pris en charge.
- Fix 'Modèle # évaluent' & quot; manger & quot; caractère précédent si «nul» a été renvoyée par la fonction 'toTemplateReplacements de.
- Assurez-vous que APPLET, OBJECT et EMBED éléments (déficients) sont prolongés par des méthodes simulées dans IE8. Retour au début si '_extendedByPrototype' est présent sur un élément.
- Remplacer création du réseau et 'Array # include' avec un plus efficace 'RegExp # test'.
- Réorganiser le chemin 'ElementExtensions' sont définis. Assurez-vous que les éléments utilisés dans SpecificElementExtensions sont nettoyés.
- Assurez-vous que $ A fonctionne avec des valeurs primitives.
- Fonction Ne navigateur sniff quand fork 'unmark' dans la suite du sélecteur. Au lieu d'utiliser un critère approprié -. PROPERTIES_ATTRIBUTES_MAP
- Ne pas utiliser la notation à court main méthodes d'éléments (@ element.getStyle () - & # X3e; Element.getStyle (@element)) pour des raisons de performance. Ne pas utiliser '$ A' et 'Array.prototype.shift' quand 'Array.prototype.slice' peut être utilisé à la place.
- 'Prototype.Browser.Opera' utilise maintenant l'inférence plus forte et est déterminée par [[classe]] de l'être 'window.opera' - & quot;. Opera & quot;
- erreur Fix en event.js qui a empêché la fixation de plus d'un répondeur pour un / élément combinaison de nom d'événement.
- Ne pas renifler lors du test pour les propriétaires mouseenter / mouseleave événements soutien de IE. Utilisez l'inférence plus robuste à la place.
- Utiliser 'Prototype.emptyFunction' uniforme dans les tests unitaires.
- extension deprecation: mark tableaux # réduisent () comme retiré .
- 'Form.serialize' travaille maintenant en toute sécurité avec des formes qui ont & quot; longueur & quot;. Éléments -named
Ce qui est nouveau dans la version 1.6.1_rc1:
- 'Element # update' prend maintenant soin de SCRIPT éléments dans IE.
- Supprimer les variables locales inutilisées de 'Element.extend'. Fixer l'un des tests de forme pour enlever '_extendedByPrototype' en mettant à 'undefined' plutôt que de 'false' ( '_extendedByPrototype' étant «faux» ne force pas 'Element.extend' à l'élément ré-étendre).
- make test pour 'escapeHTML' / 'unescapeHTML' plus stricte. (Chrome 1.x échappe & quot; & # x3C; & quot; et & quot; && quot; avec «innerHTML», mais pas & quot; & # X3e; & quot;)
- Supprimer un autre reniflement d'un de tests DOM. Correctifs dernier échec IE8.
- 'Element.extend' prend maintenant soin de IE8 bug quand HTMLAppletElement et HTMLObjectElement objets ne héritent pas de 'Element.prototype'.
- Tests Fix DOM à utiliser test de fonctionnalité appropriée lors du test 'setOpacity'
- Résoudre un autre échec dans IE8, 'pour' 'htmlFor' {/ set obtenir} traduction d'attributs /.
- Fix 'Element # writeAttribute' et échecs 'Element # ReadAttribute' dans IE8 en raison du manque de tests de fonction appropriée.
- Supprimer reniflant de l'un des tests de DOM, qui ont produit des échecs dans IE8.
- Fix test 'Form.reset' où 'respondsTo' ne détecterait pas une méthode en raison de typeof retour & quot; objet & quot; (Plutôt que & quot; fonction & quot;) dans IE
- Supprimer tableaux # réduisent qui remplace actuellement native «réduire» dans la mise en œuvre des clients JS1.8, par exemple Firefox 3 +
- Assurez-vous que try / catch / finally est utilisé au lieu de try / finally pour les clients sans soutien à ce dernier un (par exemple Blackberry, IE)
- Utiliser 'dans' opérateur lors de l'accès des biens d'un nodelist pour empêcher Safari & # x3C; = 2.0.4 de planter
- Ajouter un élément # clone comme un wrapper sûre de 'cloneNode' native.
- Ajoutez des tests pour vérifier IE8 attribue correctement un nom de classe dans le constructeur 'Element'.
- Supprimer reniflant de «Element» lors de la détection "setAttribute" cassé dans IE.
- Supprimer reniflant de 'Element.update' ramification en faveur de la détection de caractéristiques.
- Supprimer renifler quand ramification 'escapeHTML' et 'unescapeHTML'.
- Redéfinir Element # dans IE 6-7 pour éviter l'extension de tous les descendants quand aucun sélecteur est donné.
- Inverser les définitions de l'événement # pointeur (X | Y) et Event # pointeur pour empêcher le calcul inutile .
- Ajout du support de première classe pour 'mouseenter' et événements »de MouseLeave» dans les navigateurs non-IE (IE les prend en charge nativement).
- Assurez-vous que '_extendedByPrototype', '_countedByPrototype' et expandos de noeud 'prototypeUID' sont accessibles avec «typeof» pour éviter les erreurs dans certains environnements.
- Correction d'un problème où Opera 9.x renvoie des résultats incorrects sur certaines requêtes de sélection avec combinators descendants.
- références Null sur à des éléments dans le cache sur la page déchargement. Besoin cela en plus de l'Event # stopObserving appelle à nettoyer les fuites de mémoire.
- Assurez-vous 'toString' et les propriétés 'valueOf' sont copiés dans une sous-classe seulement si nécessaire dans IE6.
- Assurez-vous que 'getAttribute' est utilisé sans drapeau pour accéder au & quot; Type & quot; attribut d'un iframe (IE lance une erreur autrement).
- Chaîne # gsub devrait échapper métacaractères lorsque le premier argument est une chaîne.
- Pour Fix de remplacement dans la chaîne # unescapeHTML
- Correction d'un problème où une requête de sélection ancrée sur un nœud qui n'a pas été jointe au document échoué dans IE.
- Selector Fix pour correspondre à des éléments avec des attributs contenant des traits d'union.
- Assurez-vous que Form.reset renvoie toujours une référence à l'élément récepteur .
- Echap & quot;: & quot; et & quot;. & quot; caractères lorsque vous faites la sélection de CSS contextuelle dans les navigateurs qui prennent en charge querySelectorAll.
- Assurer la propriété «cible» sur les événements ne sont jamais undefined dans IE.
- Assurez-Element # descendants renvoie toujours un tableau.
- Ne mettez pas les éléments de position fixe à absolue dans Element.getDimensions
- Évitez les boucles infinies lors de l'appel à cordes # sub avec motif vide
- Basculer vers Pignons pour la construction des prototypes distfiles.
- Mettez Object.is (Array | Chaîne | Nombre) d'utiliser l'approche largement supérieur découvert par Juriy .
- En outre fix pour assurer Object.is (String | Number) ne jette pas des exceptions sur les objets d'accueil dans IE .
- Assurez-Enumerable # grep peut gérer les chaînes avec les métacaractères.
- Passez à la & quot; approche doScroll & quot; pour le dom. événement personnalisé chargé
- Optimisez document.viewport.get (Dimensions | Largeur | Hauteur).
- Correction d'un problème où l'objet # isString et Objet # ESTNUM return false for String et Number & quot; wrapper & quot; objets.
- Set document.loaded = true avant le tir dom. Chargé événement personnalisé
- Laissez Element # magasin pour accepter un objet contenant plusieurs paires clé / valeur.
- Change Element # magasin pour retourner l'élément lui-même (pour le chaînage).
- Ajoutez-bouillonnantes non événements personnalisés. Un nouvel argument final à Element # feu par défaut 'true'; passer «faux» pour empêcher bullage lors de la cuisson d'un événement personnalisé.
- système d'événements Alter à utiliser les nouvelles API de stockage d'éléments plutôt que d'avoir sa propre hashtable mondiale.
- Ajouter Element # magasin et Element # récupérer pour la sécurité, le stockage de hachage soutenu par des éléments de métadonnées (pas de fuites de mémoire). Également ajouter Element # getStorage pour travailler avec le hachage de stockage de l'élément directement. Pointe du chapeau:. Mootools
- Correction d'un problème où certaines versions de noms de classe de traitement Safari insensible à la casse dans le sélecteur / $$ requêtes.
- Correction d'un problème où la fonction # argumentNames retourné des résultats incorrects dans IE lorsque des commentaires ont été entremêlées avec des noms d'argument.
- Selector.patterns devrait être représenté comme une structure ordonnée.
- Amélioration des performances dans les méthodes de fonction
Exigences :
- JavaScript côté client
Commentaires non trouvées