问题描述
我希望给window里面添加MobileWindow,然后这个MobileWindow作为全局变量,其他的函数能够访问到,但是报错了
具体代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
.t1 {
width: 500px;
height: 200px;
background: #0C9A9A;
}
</style>
</head>
<body>
<div>
<div class="t1">
按钮
</div>
</div>
<script>
(function(){
MobileWindow.prototype = {
name: 123
}
window.MobileWindow = MobileWindow
})()
window.onload = function () {
initClickEven()
}
function initClickEven() {
document.getElementsByClassName('t1')[0].onclick = function () {
console.log('t1');
console.log(MobileWindow.name);
}
}
</script>
</body>
</html>
感谢楼下提供思路
方案1
<script>
(function(){
// function MobileWindow () {
//
// }
// MobileWindow.prototype = {
// name: 123
// }
// window.MobileWindow = MobileWindow
window.MobileWindow = Object.create({name: 325})
})()
window.onload = function () {
initClickEven()
}
function initClickEven() {
document.getElementsByClassName('t1')[0].onclick = function () {
console.log('t1');
console.log(MobileWindow.name);
}
}
</script>
方案2
<script>
(function(){
function MobileWindow () {
}
MobileWindow.prototype = {
name: 123
}
window.MobileWindow = MobileWindow
// window.MobileWindow = Object.create({name: 325})
})()
window.onload = function () {
initClickEven()
}
function initClickEven() {
document.getElementsByClassName('t1')[0].onclick = function () {
console.log('t1');
// console.log(MobileWindow.name);
console.log(new MobileWindow().name);
}
}
</script>