2010-06-08 4 views
2

J'ai une zone de texte dans laquelle les utilisateurs peuvent taper le code source (html/css/js). Je veux être en mesure de les laisser cliquer sur un lien "passer en plein écran" pour faire l'éditeur en plein écran.make textarea fullscreen jquery (pour utilisation comme éditeur de code)

Bien sûr, cela devrait fonctionner sur n'importe quelle résolution et doit également redimensionner quand un utilisateur redimensionne sa fenêtre.

J'ai trouvé ce plugin, http://plugins.jquery.com/project/fulltextarea, mais il ne se redimensionne pas lorsque les fenêtres du navigateur sont redimensionnées.

Des conseils ou des plugins pour celui-ci?

+0

avez-vous essayé de définir la largeur/hauteur textarea à 100%!? –

Répondre

4

Vous pouvez gérer l'événement si vous voulez:

var $window = $(window); 
var $textarea = $('#yourTextArea'); 
$window.resize(function() { 
    $textarea.height($window.height()); 
    $textarea.width($window.width()); 
}); 

je recommande également étranglant l'événement à l'aide https://github.com/cowboy/jquery-throttle-debounce afin que l'événement resize ne se déclenche pas trop souvent

var $window = $(window); 
var $textarea = $('#yourTextArea'); 
var resizeTextarea = function() { 
    $textarea.height($window.height()); 
    $textarea.width($window.width()); 
}; 
// create the resize handler, but throttle it 
$window.resize($.throttle(250, resizeTextarea)); 
+0

'var $ textarea = $ (this);' <- notez que 'this' dans le contexte de l'événement de redimensionnement de la fenêtre est la fenêtre elle-même. L'événement n'est pas lié à la zone de texte. C'est une solution facile, il suffit d'utiliser un sélecteur pour votre zone de texte. –

+0

Ouais, j'avais $ ('# yourTextArea'). Redimensionner pour commencer et réalisé mon erreur, mais n'a pas pensé à réparer les autres choses - merci de le signaler :) –