Моя index.html имеет кнопку (id="my-btn"
):
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>My INDEX PAGE</title>
</head>
<body>
<br><input type="button" id="my-btn" value="OPEN NEW WINDOW"/>
<script src="js/my.js"></script>
</body>
</html>
на странице выше my.js , который обрабатывает событие нажатия кнопки, при нажатии кнопки открывается новое окно браузера с новой страницей ( test.html )
my.js:
$('#my-btn').click(function(){
window.open('test.html', 'testwindow');
});
Новая страница ( test.html ) открылась / всплыла в новом окне браузера: test.html:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>TEST</title>
</head>
<body>
<div id="cars"></div>
<script src="js/jquery-1.5.1.js"></script>
<script src="js/mycar.js"></script>
<script src="js/test.js"></script>
</body>
</html>
На новой странице включено test.js , которое вызовет функции в MyTest
и добавит текст номера автомобилей каксодержимое этой всплывающей страницы:
js / test.js
$(document).ready(function(){
MyTest.updateCars(); //MyTest is a function defined in mycar.js
var cars = MyTest.getCars();
$("#cars").append("<strong>number of cars: "+cars.length+"</strong>");
});
Функция MyTest
определена в mycar.js:
js / mycar.js
var MyTest = function(){
var cars=[];
var updateCars=function(){
cars.push('car 1', 'car 2');
};
return{
updateCars: function(){
updateCars();
},
getCars: function(){
console.log(cars.length);
return cars;
}
};
}();
Но когда страница test.html появилась в новом окне браузера, окноколичество машин всегда равно 0.
Как вы видели выше, я назвал updateCars()
функцию mycar.js in test.js , но во всплывающем окне не отображается обновленный номер машины, как я могу получить обновленные автомобили (это 2 машины, car1 и car2) в новом всплывающем окне?
(У меня есть jquery-1.5.1.js в каталоге "js /")