建立一个按钮,点击这个按钮的时候使用单例模式生成一个div
时间: 2023-12-10 14:40:29 浏览: 84
按钮单选示例demo
好的,以下是一个简单的示例代码:
HTML:
```html
<button id="createDivBtn">创建Div</button>
```
JavaScript:
```javascript
var divSingleton = (function() {
var instance;
function createDiv() {
// 创建并返回一个新的div元素
var div = document.createElement('div');
div.innerText = '这是一个单例生成的div。';
return div;
}
return {
getInstance: function() {
if (!instance) {
instance = createDiv();
}
return instance;
}
};
})();
document.getElementById('createDivBtn').addEventListener('click', function() {
var div = divSingleton.getInstance();
document.body.appendChild(div);
});
```
这个示例中,我们使用单例模式创建了一个生成div元素的函数 `createDiv()`,并使用闭包保存了实例对象。在 `getInstance()` 方法中,我们检查实例对象是否存在,如果不存在就调用 `createDiv()` 函数生成一个新的 div 元素,并将其保存在实例变量 `instance` 中。如果实例变量已经存在,则直接返回该实例。
最后,在按钮的点击事件中,我们调用 `getInstance()` 方法获取 div 元素的实例,并将其添加到页面中。由于使用了单例模式,所以无论点击多少次按钮,都只会生成一个 div 元素。
阅读全文