document getelementbyid[标签:次标题
今天,是JavaScript回炉的第六十二天
js设计模式之模块模式
模块模式的核心思想是构建一个拥有私有属性和私用方法的模块,只把公用属性和公用
方法暴露给调用者。
闭包的使用主要针对右下角div弹出未读内容的名称,给予用户的提示
//这是js是模块模式
let objadDdiv = (function () {
//创建数组
let arr = new Array();
//获取数据库未读的内容标记
function remarksMysql() {
//创建ajax
let ajx = new XMLHttpRequest();
//创url的路由
let url = 'http://127.0.0.1:8000/index_fontsize';
//ajax这里使用了同步因为后面需要return
ajx.open('GET', url, false);
//ajax获取remarks为1为未读的标记,并且把内容的名称写入数组
ajx.onreadystatechange = function () {
if (ajx.readyState == 4) {
if (ajx.status == 200) {
let num = JSONicon.parse(ajx.responseText)['data'].length;
let remarks = JSON.parse(ajx.responseText)['data'];
for (let i = 0; i < num; i++) {
if (remarks[i].remarks == 1) {
arr.push(remarks[i].name);
}
}
}
}
}
ajx.send();
//返回arr数组
return arr;
}
//返回对象
return {
add:remarksMysql()
}
})()
//获取模块模式的内容并且将内容写入div的ul>li中
function judge(){
if(objadDdiv.add.length > 0){
let div = document.getElementById('div01');
div.style.overflow = 'scroll';
div.setAttribute('class', 'div11')
div.style.display = 'block';
let ul = document.createElement('ul');
ul.style.listStyle='none';
div.appendChild(ul);
for(let i=0;i<objadDdiv.add.length;i++){
let li = document.createElement('li');
ul.appendChild(li);
li.innerText =(i+1)+'、'+objadDdiv.add[i];
}
}else{
div.style.display = 'none';
}
}





