Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/226.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何根据我单击的菜单按钮更改图像路径_Javascript_Php - Fatal编程技术网

Javascript 如何根据我单击的菜单按钮更改图像路径

Javascript 如何根据我单击的菜单按钮更改图像路径,javascript,php,Javascript,Php,我有一个菜单,其中每个部分显示不同的画廊图像。因此,我必须知道我点击了菜单的哪个按钮,因为根据按钮的不同,我必须更改图像路径 <div id="tabcontainer"> <ul id="tabnav"> <li><a href="#tabs-1">Monuments</a></li> <li><a href="#tabs-2">Bridges</a></li&

我有一个菜单,其中每个部分显示不同的画廊图像。因此,我必须知道我点击了菜单的哪个按钮,因为根据按钮的不同,我必须更改图像路径

<div id="tabcontainer">
  <ul id="tabnav">
    <li><a href="#tabs-1">Monuments</a></li>
    <li><a href="#tabs-2">Bridges</a></li>
    <li><a href="#tabs-3">Gardens</a></li>
我改变了菜单:

    <li><a href="#tabs-1" onclick="$path=setPath('<? echo $path_monuments; ?>')">Monuments</a></li>
    <li><a href="#tabs-2" onclick="$path=setPath('<? echo $path_bridges; ?>')">Bridges</a></li>
    <li><a href="#tabs-3" onclick="$path=setPath('<? echo $path_gardens; ?>')">Gardens</a></li>

  • 但即使如此,变量路径也不会改变她的值。有人能帮我吗?

    您可以做的是将路径附加到相应的链接:

    <div id="tabcontainer">
      <ul id="tabnav">
        <li><a href="#tabs-1" onclick="setPath('<? echo $path1; ?>')">Monuments</a></li>
        <li><a href="#tabs-2" onclick="setPath('<? echo $path2; ?>')">Bridges</a></li>
        <li><a href="#tabs-3" onclick="setPath('<? echo $path3; ?>')">Gardens</a></li>
    
    
    

    因此,您将在单击时获得每个链接的路径。这就是您想要的吗?

    您可以将路径附加到相应的链接:

    <div id="tabcontainer">
      <ul id="tabnav">
        <li><a href="#tabs-1" onclick="setPath('<? echo $path1; ?>')">Monuments</a></li>
        <li><a href="#tabs-2" onclick="setPath('<? echo $path2; ?>')">Bridges</a></li>
        <li><a href="#tabs-3" onclick="setPath('<? echo $path3; ?>')">Gardens</a></li>
    
    
    

    因此,您将在单击时获得每个链接的路径。这就是您想要的吗?

    您也可以将事件移动到javascript中,这样就不必修改标记

    ...
    myTabs[i].addEventListener( 'click', function(e) {
    ...
    

    请参阅本文中的代码示例。

    您也可以将事件移动到javascript中,这样就不必修改标记

    ...
    myTabs[i].addEventListener( 'click', function(e) {
    ...
    


    请参阅本节中的代码示例。

    在何处加载图像?您使用的是什么PHP代码?你试过什么javascript?你漏掉了你问题的重要方面。我遗漏了什么吗?为什么这些库不能位于单独的页面上,而您在单击链接时导航到相关库?菜单通常就是这样工作的。Axel,我没有尝试任何javascript代码,但我想也许我的问题可以用它来解决,因为这个原因,我放了javascript标签。如果我错了,我道歉。我在变量$path中加载图像的路径,我使用$path=C:/wamp/www/MyApp/themes/theme/image,但我希望每次根据我单击的菜单按钮的不同路径输入该变量。Martin bean,您没有遗漏任何内容。我从php开始,说实话,我有点迷路了,我没想到你说的,但也许这是最好的解决方案。顺便说一下,谢谢Martin Bean。在哪里加载图像?您使用的是什么PHP代码?你试过什么javascript?你漏掉了你问题的重要方面。我遗漏了什么吗?为什么这些库不能位于单独的页面上,而您在单击链接时导航到相关库?菜单通常就是这样工作的。Axel,我没有尝试任何javascript代码,但我想也许我的问题可以用它来解决,因为这个原因,我放了javascript标签。如果我错了,我道歉。我在变量$path中加载图像的路径,我使用$path=C:/wamp/www/MyApp/themes/theme/image,但我希望每次根据我单击的菜单按钮的不同路径输入该变量。Martin bean,您没有遗漏任何内容。我从php开始,说实话,我有点迷路了,我没想到你说的,但也许这是最好的解决方案。顺便说一下,谢谢马丁·比恩。这很好。请记住,如果您还使用任何JS库,如jQuery,则设置onclick属性可能会影响您在代码中注册其他单击处理程序的能力。@是的,我知道,但OP只指定了javascript本身,所以我正在考虑他没有使用框架/库。谢谢DontVoteMeDown和Rescue Creative。我只在Yii框架中使用php,我使用的是免费的css,在css示例中,所有的galeries都在本文中,因此我在同一个php页面中编写了所有内容。DontVoteMeDown,我想我没有很好地解释我的想法。我将在主帖中更好地解释它。DontVoteMeDown,你能告诉我设置路径函数的定义在哪里吗?Thanks@JK_galera该函数必须以您希望的方式实现,以处理所选路径!这很好。请记住,如果您还使用任何JS库,如jQuery,则设置onclick属性可能会影响您在代码中注册其他单击处理程序的能力。@是的,我知道,但OP只指定了javascript本身,所以我正在考虑他没有使用框架/库。谢谢DontVoteMeDown和Rescue Creative。我只在Yii框架中使用php,我使用的是免费的css,在css示例中,所有的galeries都在本文中,因此我在同一个php页面中编写了所有内容。DontVoteMeDown,我想我没有很好地解释我的想法。我将在主帖中更好地解释它。DontVoteMeDown,你能告诉我设置路径函数的定义在哪里吗?Thanks@JK_galera该函数必须以您希望的方式实现,以处理所选路径!斯皮蒂:对不起,我不明白你的意思……我只是用javascript来创建一些动画,告诉你真相,我不懂javascript。你能再给我解释一下你的解决办法吗?非常感谢,当然可以。我已经在JSFIDLE中添加了注释,解释了如何使用它。斯皮蒂:对不起,我不明白你的意思……我只是用javascript来创建一些动画,告诉你真相,我不懂javascript。你能再给我解释一下你的解决办法吗?非常感谢,当然可以。我已经在JSFIDLE中添加了注释,解释了如何使用它。