2010-12-01 21 views
5

J'essaie d'implémenter maxlength sur une zone de texte. Dans IE7, window.clipboardData.getData("Text") renvoie le nombre correct de caractères copiés. dans IE8, le même appel renvoie 0. Quel est le problème?window.clipboardData.getData ("Text") renvoie 0 dans IE8

est ici le js

var someRule= { 
    "textarea" : function(element) { 
    element.onpaste = function() { 
     var copied = window.clipboardData.getData("Text"); 
     alert('copied length = '+copied.length); 
    } 
    } 
}; 

Behaviour.register(someRule); 

alt text

Répondre

6

Il y a un paramètre de sécurité dans IE8:

Pour empêcher un site web à partir de la lecture de votre presse-papiers, procédez comme suit:

Allez dans Outils-> Options Internet. Cliquez sur l'onglet Sécurité. Cliquez sur "Personnaliser le niveau". Faites défiler jusqu'à la section Script sous Paramètres. Définissez "Autoriser les opérations de collage via un script" sur Désactiver ou Invite. Appuyez sur les boutons OK pour fermer les boîtes de dialogue.

Dans votre cas, ce paramètre est probablement désactivé.

+0

Je n'ai pas le droit de modifier ces paramètres :(Mais je ne savais pas cela, merci pour la suggestion.Autres idées? – 08Hawkeye

+0

Ces instructions étaient comment désactiver ce paramètre de sécurité.Pour avoir le script accéder au presse-papiers Si vous n'avez pas la permission de modifier ces paramètres, le script ne sera pas autorisé à accéder au presse-papiers –

+0

J'ai utilisé une machine de test de stock avec une image de base avec IE8 (I suis sur IE7 jusqu'à 8 est poussé dehors à tout le monde.) J'ai essayé mon code sur une machine devs de compagnon et cela a fonctionné Doit être un paramètre de stratégie de groupe ou d'unité centrale. – 08Hawkeye