在我的网站上,我有一个图像查看器。每次用户单击向左或向右按钮时,页面的URL将以常规方式更改。图像src使用当前页面的url中的特定数字(url中的唯一数字)。下面我提供了我正在使用的代码。代码工作正常,但它只适用于mozilla firefox。如何修复它以使其适用于所有浏览器。其他浏览器的问题是图像没有出现。
<img src="" id="image" >
<script type="text/javascript">
document.getElementById('image').src ="Images/"+location.href.match(/\d+/)+".jpg";
<br/>
document.wrriteln(location.href.match(/\d+/)+".jpg");
</script>
<br/>
<script>
var url = location.href;
function nextImage() {
return(url.replace(/(\d+)(\.html)$/, function(str, p1, p2) {
return((Number(p1) + 1) + p2);
}));
}
function prevImage() {
return(url.replace(/(\d+)(\.html)$/, function(str, p1, p2) {
return((Number(p1) - 1) + p2);
}));
}
</script>
<a href="javascript: window.location.href = prevImage();"> <img border="0" src="Assets/Left.png" /></a>
<a href="javascript: window.location.href = nextImage();"> <img border="0" src="Assets/Right.png"/></a>
答案 0 :(得分:4)
你应该做的是
<a href="#" id="prevImageControl">
并在javascript块中执行
prevImageClick = function()
{
window.location.href = prevImage();
}
var prevImageControl = document.getElementById('prevImageControl');
prevImageControl.addEventListener('click', prevImageClick);
重复nextImage()
答案 1 :(得分:0)
你需要改变这些:
<a href="javascript: window.location.href = prevImage();"> <img border="0" src="Assets/Left.png" /></a>
<a href="javascript: window.location.href = nextImage();"> <img border="0" src="Assets/Right.png"/></a>
点击事件。
<a href="#" onclick="javascript: window.location.href = prevImage();return false;"> <img border="0" src="Assets/Left.png" /></a>
<a href="#" onclick="javascript: window.location.href = nextImage();return false;"> <img border="0" src="Assets/Right.png"/></a>
或者更好的是,将它们放入功能中。
答案 2 :(得分:0)
你在document.writeln
中有一个双r