30/09/2018, 19:26
Về nút bấm trong javascript
cho em hỏi là em có 5 cái ảnh bấy giờ em muốn sau khi người dùng bấm nút thì sau mỗi lần bấm sẽ hiện ra một ảnh vậy nên em tạo một đối tượng chứa tất cả các linh của các ảnh đấy rồi dùng bộ laứng nghe sự kiên là EventListener sau đó em tao 4 hàm dùng đêtr truy xuât vào id của thẻ nhưng khi hiển thị lên ttrang web thì khi bấm vào lại hiện thị mỗi ảnh cuối cùng thôi vậy em phải làm thế nào cho đúng ạ em thanh nhiều lắm
Bài liên quan
Ý tưởng như sau:
Trong HTML có một thẻ img với src là đường dẫn hình đầu tiên và nút bấm.
Trong script ta có một mãng hình với 5 phần tử chứa đường dẫn 5 hình.
Ta có một biến đếm với giá trị ban đầu là 0
Sau đó trong sự kiện nhấn nút ta
kiếm trả nếu biến đếm nhỏ hơn 4 ta tăng biến đếm 1 đơn vị còn ngược lại ta gán biến đếm về giá trị 0.
Cuối cùng ta gán đường dẫn của hình cho mãng theo giá trị biến đếm
bạn code ví dụ duoc khong ban
HTML
Example - History API pushStateclick
JS
// tạo mãng hình
arrImgs = new Array();
arrImgs[0] = ‘hinh1’;
arrImgs[1] = ‘hinh2’;
arrImgs[2] = ‘hinh3’;
arrImgs[3] = ‘hinh4’;
arrImgs[4] = ‘hinh5’;
// biến đếm
count = 0;
document.querySelector(‘button’).addEventListener(‘click’,function(){
if(count < arrImgs.lenght - 1 ) // khi đếm vẫn nhỏ hơn chiễu dài mãng trừ 1
{
count++; // tăng biến đếm
}
else
{
count = 0; // trả về giá trị 0
}
// thẻ hình thứ 1 có chỉ số là 0
document.images[0].src = arrImgs[count]; // gán giá trị mãng cho đường dẫn hình
});
// tạo mãng hình
arrImgs = new Array();
arrImgs[0] = ‘hinh1’;
arrImgs[1] = ‘hinh2’;
arrImgs[2] = ‘hinh3’;
arrImgs[3] = ‘hinh4’;
arrImgs[4] = ‘hinh5’;
// biến đếm
count = 0;
document.querySelector(‘button’).addEventListener(‘click’,function(){
if(count < arrImgs.lenght - 1 ) // khi đếm vẫn nhỏ hơn chiễu dài mãng trừ 1
{
count++; // tăng biến đếm
}
else
{
count = 0; // trả về giá trị 0
}
// thẻ hình thứ 1 có chỉ số là 0
document.images[0].src = arrImgs[count]; // gán giá trị mãng cho đường dẫn hình
});
Tối qua nhớ có để lại cái demo rồi mà ta? Bạn sửa lại cái chỗ gọi hàm
setInterval
của mình lại.// Nhớ là có người hỏi vụ giống vầy, nhưng là auto chứ ko có nút bấm