我的HTML頁面有一個圖像,其ID爲img。這個想法是,通過點擊第一個,上一個或下一個,用戶可以瀏覽一組圖像。我如何使用JavaScript來做到這一點?如何使用javascript訪問和修改HTML頁面中的圖像?
回答
這應該是你一個良好的開端:
<script>
var imgs = ["img1.png","img2.png","img3.png"]; // copy images to the same dir
var index = 0;
</script>
<img src="img1.png" onclick="this.src=imgs[++index%imgs.length]"/>
點擊圖片滑動。
如果您需要按鍵,請參閱下面的例子:
<img id="clicker" src="img1.png"/>
<a href="#" onclick="prev(); return false;">Prev</a>
<a href="#" onclick="next(); return false;">Next</a>
<a href="#" onclick="first(); return false;">First</a>
<a href="#" onclick="last(); return false;">Last</a>
<script>
var imgs = ["img1.png","img2.png","img3.png"];
var index = 0;
var clicker = document.getElementById("clicker");
function prev() { clicker.src = imgs[--index%imgs.length]; }
function next() { clicker.src = imgs[++index%imgs.length]; }
function first() { clicker.src = imgs[index=0]; }
function last() { clicker.src = imgs[index=imgs.length-1]; }
</script>
的return false
意味着,點擊默認操作(跟隨鏈接)被supressed。 Javascript可以訪問元素,即使用id
(請參閱clicker
這裏)。一旦你對此感到滿意,並開始解決瀏覽器兼容性問題,繼續使用jQuery(如其他建議),MooTools或其他框架是個好主意。
使用jQuery!
var myImg = $("#myimg");
$("#next").click(function(){
var id = myImg.attr("data-id") + 1;
myImg.attr("src", "image"+id+".jpg");
});
$("#prev").click(function(){
var id = myImg.attr("data-id") -1;
myImg.attr("src", "image"+id+".jpg");
});
HTML:
<img id="myimg" src="image1.jpg" data-id="1">
<a href="#" id="next">Next</a><br>
<a href="#" id="prev">Previous</a><br>
這是一個很虛的例子。那裏有很多幻燈片插件!
我不確定是否用一些框架而不是純javascript開始是一個好主意。 –
沒錯。但是,如果他的網站遲早會出現,他會發現一個非常有用的框架,可以使編碼更容易。 – papaiatis
遲早,但不是在這個階段:我經常看到jQuery泥的大球,如果他們只知道普通的javascript,就可以用非常簡單的方法解決。你的例子可以很容易地重寫爲純JavaScript。沒關係。 –
你做不是需要一個這樣的庫。這樣的事情會改變圖像的URL,其中「theImg」是圖像的id
:
document.getElementById("theImg").src = "newUrl.png";
要做到這一點沒有明確id
S,這將改變URL,其中i
是圖像的索引:
嘗試是這樣的(未經測試):
LOAD JQUERY:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type="text/javascript"></script>
JAVASCRIPT:
<script type='text/javascript'>
var lst_src = ['img1.jpg', 'img2.png', 'img3.gif'];
$('a', '#nav').click(function(e) {
e.preventDefault();
var src_current = $('#img').attr('src');
var index = lst_src.indexOf(src_current);
var len = lst_src.length;
var action = $(this).attr('class');
switch ($action) {
case 'previous' : var i = index - 1;
if (i < 0) src_current = lst_src[len + i];
else src_current = lst_src[i];
break;
case 'next' : var i = index + 1;
if (i > len) src_current = lst_src[i - len];
else src_current = lst_src[i];
break;
case 'first' : src_current = lst_src[0];
break;
case 'last' : src_current = lst_src[len - 1];
break;
}
$('#img').attr('src', src_current);
});
</script>
HTML:使用類的鏈接的表示所需要的動作:
<img id='img' src='img1.jpg'>
<p id='nav'>
<a href='' class='first'>←←First</a>
<a href='' class='previous'>←Previous</a>
<a href='' class='next'>Next→</a>
<a href='' class='last'>Last→$rarr;</a>
</p>
N o需要jQuery的:
<script type='text/javascript'>
window.onload = function() {
var imageSrcs= ['1.jpeg', '2.jpg', '3.jpg'];
var index = 0;
var image = document.getElementById('img');
var previous = document.getElementById('previous');
previous.onclick = function() {
index -= 1;
if(index < 0) index = imageSrcs.length - 1;
image.src = imageSrcs[index];
}
var next = document.getElementById('next');
next.onclick = function() {
index += 1;
if(index == imageSrcs.length) index = 0;
image.src = imageSrcs[index];
}
}
</script>
和HTML:
<img src='1.jpeg' id='img'>
<div>
<span id='previous'>Previous</span>
<span id='next'>Next</span>
</div>
- 1. 使用JavaScript每隔幾秒更改HTML頁面中的圖像
- 2. 使用html和javascript將圖像上載到html頁面
- 3. 如何訪問/更改JavaScript圖像對象中的像素?
- 4. GWT:如何訪問/修改HTML面板的價值
- 5. 如何使用JavaScript刷新頁面時更改圖像?
- 6. 圖像引擎,如何在視圖中訪問我的頁面中的圖像
- 7. 如何使用頁面修改來修改由JavaScript加載的元素
- 8. 如何在html和css中使用像下面的圖像div
- 9. JavaScript使用方法訪問不同的HTML頁面數據?
- 10. 使用小書籤修改當前頁面,並訪問iFrame
- 11. 查看用Javascript修改後的頁面的HTML
- 12. 修改JavaScript訪問變量
- 13. iOS/Javascript - 如何使用Javascript訪問設備上的圖像
- 14. 修改HTML輸出時的文章和網頁加載圖像
- 15. 使用javascript修復頁面?
- 16. 如何使用JavaScript訪問PDF中的圖像?
- 17. 如何使用javascript更改頁面的HTML
- 18. 如何使用Spring Boot REST限制對.html頁面的訪問
- 19. 使用按鈕和javascript更改html img標記中的圖像
- 20. 如何使用VBScript修改.png圖像
- 21. 只允許從特定的HTML頁面訪問圖像
- 22. 如何訪問和修改UINavigationBar
- 23. 如何在html頁面中使用數據url顯示圖像
- 24. 如何在HTML頁面中使用HTTP標頭顯示圖像?
- 25. 修改表html用PHP頁面顯示
- 26. 如何使用HTML修改翻轉圖像效果?
- 27. 從html和javascript訪問經過身份驗證的PHP頁面
- 28. 如何使用HTML Agility Pack訪問頁面的用戶標識和密碼?
- 29. 如何使用Javascript訪問另一個頁面的元素?
- 30. 在其他頁面訪問/修改母版頁的控制 - Asp.net
您是否嘗試過任何的10000圖庫插件可用? [Google搜索結果](https://www.google.com.au/webhp?hl=zh-CN&btnG=Google+Search#hl=zh-CN&gs_nf=1&cp=14&gs_id=67&xhr=t&q=jquery+image+gallery&pf=p&output=search&sclient= psy-ab&oq = jquery + image + g&aq = 0&aqi = g4&aql =&gs_l =&pbx = 1&bav = on.2,or.r_gc.r_pw.r_cp.r_qf ., cf.osb&fp = 4f9c96331412778a&biw = 1541&bih = 884) –
對此,我試圖通過示例來解決JavaScript。 – DaedalusUsedPerl
然後將世界教程添加到搜索查詢的末尾。再次,我確信有數百圖像庫教程在那裏:) –