JavaScript——内容与行为的隔离

来源:互联网 发布:二战日本女学生知乎 编辑:程序博客网 时间:2024/06/06 08:59

     图书馆借回一本《JavaScript精粹》。

     Jeffrey Zeldman曾经将Web开发形容为“三条腿的板凳”——内容(HTML)、表示(CSS)、行为(JavaScript),他不仅指出三者在功能上的不同,同时也认为三者应当被互相隔离开!

 

    按着他的意思,写了一个,确实感觉到,在维护和在解决浏览器版本支持上有很大的优势!

html区:    

<script type="text/javascript"><!-- var t1 = document.getElementById("t1"); alert(typeof t1); t1.onclick = function(){ change(); } function change(){alert("click!"); if(t1.value == "google"){ t1.value = "baidu"; } else{ t1.value = "google" ; } }// --></script> <html>
 <body>
    <center>
      <TEXTAREA NAME="t1" ROWS="2" COLS="3" id="t1"></TEXTAREA>
    </center>
 </body>

</html> 

JavaScript区:

<script type="text/javascript"><!-- var t1 = document.getElementById("t1"); alert(typeof t1); t1.onclick = function(){ change(); } function change(){alert("click!"); if(t1.value == "google"){ t1.value = "baidu"; } else{ t1.value = "google" ; } }// --></script> 

<script type="text/javascript"><!-- var t1 = document.getElementById("t1"); alert(typeof t1); t1.onclick = function(){ change(); } function change(){alert("click!"); if(t1.value == "google"){ t1.value = "baidu"; } else{ t1.value = "google" ; } }// --></script> 

     书中还提到“JavaScript不能修改文本输入区域的值(出于安全问题考虑)”,可以上的写法不正是修改了吗?换成text的也试过了,一样可以修改……它要表达什么呢?

 

<script type="text/javascript"><!-- var t1 = document.getElementById("t1"); alert(typeof t1); t1.onclick = function(){ change(); } function change(){alert("click!"); if(t1.value == "google"){ t1.value = "baidu"; } else{ t1.value = "google" ; } }// --></script>