我一直在研究一个脚本,当图像悬停时将其更改为链接。
但是,无法点击该链接。光标确实变成了一个指针,我可以在浏览器的左下方看到链接,但是当我点击它时没有任何反应。
它似乎在 Firefox 中有效,但在任何其他浏览器中无效。 鼠标右键单击 -> 在新选项卡中打开,但确实有效。
这是我的代码:
<script type="text/javascript"><!--
var guesta='<a href="<?php $menu = JSite::getMenu();$alias = $menu->getItem(115)->alias;echo $alias; ?>"><?php $menu = JSite::getMenu();$title = $menu->getItem(115)->title;echo $title; ?></a>';
function guest1(){
document.getElementById('guest1').innerHTML=guesta;
document.getElementById('guest1').style.background ='#01afae';
}
function guest1empty(){
document.getElementById('guest1').innerHTML='<img src="image.png" />';
document.getElementById('guest1').style.background ='#fdfdfd';
}
//-->
</script>
<style type="text/css">
.guest {
width:70px;
height:100px;
background-color: #fdfdfd;
color: #fdfdfd;
text-align: center;
}
.guest a:link, .guest a:visited {
color: #fdfdfd;
text-decoration: none;
line-height: 15px;
}
</style>
</head>
<body>
<div id="guest1" class="guest" onMouseOver="guest1()" onMouseOut="guest1empty()"><img src="image.png" /></div>
链接中的 PHP 代码用于从 Joomla 检索菜单项别名和标题。
非常非常感谢您的帮助!
最好的问候,
杰罗姆
最佳答案
我建议实际使用 document.createElement("IMG") 和 document.createElement("A") 创建元素。这是知道元素将被正确创建的最可靠的方法。 然而,这对我来说似乎不是一个非常实用的方法。为什么你不只是让图像成为一个链接呢?为什么悬停状态会来回变化? 最后一点,您是否尝试过回显 Joomla 返回值的内容以确保您甚至能取回内容?框架可能是极端 finnickey,因此可能很难找出错误的确切位置。 让我们知道!
关于PHP/JavaScript OnMouseOver 链接不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13012004/