Ich arbeite an einer jsfiddle und habe ausgewählt, dass das verwendete Framework 'onload, jquery 1.8.2' ist.

Ich habe auch die folgenden Ressourcen aufgerufen:

  • jquery.multipage.js
  • jquery.validate.min.js

Sowohl diese Skripte als auch das in jsfiddle definierte HTML und CSS geben die erwarteten Ergebnisse aus.

Ich versuche jedoch auch, etwas reines Javascript hinzuzufügen, um einige Onfocus- und Onblur-Effekte zu erzielen.

Meine Frage ist:

Wie füge ich in der obigen Umgebung das folgende Javascript zur jsfiddle hinzu:

<script type="text/javascript">
function clearText(field){
if (field.defaultValue == field.value) field.value = '';
else if (field.value == '') field.value = field.defaultValue;
}
</script>

Die jsfiddle in ihrem aktuellen Zustand ist hier:

http://jsfiddle.net/eJKQn/139/

Danke.

2
user1063287 10 Okt. 2012 im 08:47

4 Antworten

Beste Antwort
window.clearText = function(field){
   if (field.defaultValue == field.value) field.value = '';
   else if (field.value == '') field.value = field.defaultValue;
};

Das Fensterobjekt ist Ihr wahrer globaler Namespace, auf den Sie verweisen können, um Variablen und Funktionen in anderen Gehäusen zu definieren. Verwenden Sie die obigen Anweisungen. Beachten Sie, dass sich nur die erste Zeile und das Semikolon am Ende geändert haben.

1
vol7ron 10 Okt. 2012 im 04:58

Verwenden Sie für dieses Skript 'no wrap (head)' und schreiben Sie dann manuell Onload- oder Ready-Funktionen für jquery

0
Zahid Riaz 10 Okt. 2012 im 04:56

Innerhalb des Script -Tags können Sie sowohl jQuery als auch Javascript frei zusammen verwenden

Soweit ich weiß, gibt es zwei Hauptregeln

  1. Alles, was sich in document.ready befindet, wird privat. Der Umfang wird also begrenzt sein
  2. Das jQuery-Objekt ist ein Wrapper des normalen Javascript-Objekts. Daher muss beim Mischen von Javascript und jQuery wenig Sorgfalt angewendet werden
0
madhairsilence 10 Okt. 2012 im 04:58

Ich denke nicht, dass es wichtig ist, wo oder wie Sie das reine Javascript hinzufügen. Wenn Sie dies tun müssen (meistens in Ihrer eigenen App), trennen Sie jQuery und Javascript wie

// pure Javascript
function clearText(field){   
    if (field.defaultValue == field.value) field.value = '';   
    else if (field.value == '') field.value = field.defaultValue;   
}

// jQuery
$(function() {
    // all your jQuery scripts
});
0
nashNoNo 10 Okt. 2012 im 04:54