<select id="selAnimal">
<option value="cat">cat</option>
<option value="fish">fish</option>
<option value="bird">bird</option>
</select>
<p id="whatDoesThisAnimalDo"></p>
<script type="text/javascript">
document.getElementById('selAnimal').onchange = function() {
var thisAnimalDoes;
switch ( this.value ) {
case 'cat':
thisAnimalDoes = "cat meows";
break;
case 'fish':
thisAnimalDoes = "fish swims";
break;
case 'bird':
thisAnimalDoes = "bird flies";
break;
default:
thisAnimalDoes = "wuff?";
}
document.getElementById('whatDoesThisAnimalDo').innerHTML = thisAnimalDoes;
}
</script>
<select id="selAnimal">
<option value="cat">cat</option>
<option value="fish">fish</option>
<option value="bird">bird</option>
</select>
<p id="whatDoesThisAnimalDo"></p>
<script type="text/javascript">
// whatDoesAnimalDo 就是一个controller
var whatDoesAnimalDo = {
// 选择视图
start: function() {
this.view.start();
},
// 将用户的操作映射到模型的更新上
set: function(animalName) {
this.model.setAnimal(animalName);
},
};
// whatDoesAnimalDo的数据model
whatDoesAnimalDo.model = {
// animal的数据
animalDictionary: {
cat: "meows",
fish: "swims",
bird: "flies"
},
// 当前的animal,也就是这个application的状态
currentAnimal: null,
// 数据模型负责业务逻辑和数据存储
setAnimal: function(animalName) {
this.currentAnimal = this.animalDictionary[animalName] ? animalName : null;
this.onchange();
},
// 并且通知视图更新显示
onchange: function() {
whatDoesAnimalDo.view.update();
},
// 还需要响应视图对当前状态的查询
getAnimalAction: function() {
return this.currentAnimal ? this.currentAnimal + " " + this.animalDictionary[this.currentAnimal] : "wuff?";
}
};
// whatDoesAnimalDo的视图
whatDoesAnimalDo.view = {
// 用户输入触发onchange事件
start: function() {
document.getElementById('selAnimal').onchange = this.onchange;
},
// 该事件将用户请求发送给控制器
onchange: function() {
whatDoesAnimalDo.set(document.getElementById('selAnimal').value);
},
// 视图更新显示的方法,其中视图会向model查询当前的状态,并将其显示给用户
update: function() {
document.getElementById('whatDoesThisAnimalDo').innerHTML = whatDoesAnimalDo.model.getAnimalAction();
}
};
whatDoesAnimalDo.start();
</script>
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有