1

我正在使用 3 个选项卡,并且悬停事件似乎没有启动。我有一些 PHP 可以确定我们是否处于应该使用不同图像源的部分,因此是 PHP。据我所知,PHP 正在吐出正确的 SRC。

编码:

$("#tab1").hover(
  ("#tab1").attr("src","img/home_menu_images/png/home_mainmenu_hover_tab1.png"),
  ("#tab1").attr("src","PHP_SRC1"));

$("#tab2").hover(
  ("#tab2").attr("src","img/home_menu_images/png/home_mainmenu_hover_tab2.png"),
  ("#tab2").attr("src","PHP_SRC2"));

$("#tab3").hover(
  ("#tab3").attr("src","img/home_menu_images/png/home_mainmenu_hover_tab3.png"),
  ("#tab3").attr("src","PHP_SRC3"));

PHP_SRC(num)围绕 echo 的 PHP 打开和关闭标记在哪里$tab_image_(num)

4

2 回答 2

0

我的第一个倾向是你在函数$的开头错过了。mouseover, mouseout尝试将它们添加到:

$("#tab1").hover(
    $("#tab1").attr("src", "img/home_menu_images/png/home_mainmenu_hover_tab1.png"),
    $("#tab1").attr("src", "PHP_SRC1")
);
$("#tab2").hover(
    $("#tab2").attr("src", "img/home_menu_images/png/home_mainmenu_hover_tab2.png"),
    $("#tab2").attr("src", "PHP_SRC2")
);
$("#tab3").hover(
    $("#tab3").attr("src", "img/home_menu_images/png/home_mainmenu_hover_tab3.png"),
    $("#tab3").attr("src", "PHP_SRC3")
);

如果这不起作用,请尝试将它们包装在匿名函数中:

$("#tab1").hover(
    function () {$("#tab1").attr("src", "img/home_menu_images/png/home_mainmenu_hover_tab1.png");},
    function () {$("#tab1").attr("src", "PHP_SRC1");}
);
$("#tab2").hover(
    function () {$("#tab2").attr("src", "img/home_menu_images/png/home_mainmenu_hover_tab2.png");},
    function () {$("#tab2").attr("src", "PHP_SRC2");}
);
$("#tab3").hover(
    function () {$("#tab3").attr("src", "img/home_menu_images/png/home_mainmenu_hover_tab3.png");},
    function () {$("#tab3").attr("src", "PHP_SRC3");}
);
于 2012-10-06T01:01:08.603 回答
0

从我自己的角度来看,我真的不喜欢 jquery 选项卡...有一种更简单的方法来制作选项卡...您添加结合 ul li 标签的 html 锚点,然后在它们上添加 jquery 点击事件...在点击事件你制作一个 $post 或一个 $get 然后你在一个 div 容器中呈现你想要的东西......这比使用这些选项卡控件更简单......

<ul class="menu">
  <li><a onclick="function1()" class="active">tab1</a></li>
  <li><a onclick="function2()">tab2</a></li>
</ul>

<div id="content">
</div>

<script>
  function function1() {
     $('#content').html('Loading...');
        $.get("/yourdomain/someurl1", { }, function(data) {            
            $('#content').html(data);
        });
  }

  function function2() {
     $('#content').html('Loading...');
        $.post("/yourdomain/someurl2", { id: 1}, function(data) {            
            $('#content').html(data);
        });
  }
</script>

由你决定

于 2012-10-06T01:06:04.077 回答