如何使用来自另一个元素的onClick事件更改div的backgroundPosition

时间:2012-01-02 20:15:15

标签: php javascript background-position

如何将它们组合在一起?我正在这个网站上工作,要求每次点击菜单中的项目时,两个特定DIV的背景位置会改变并保持选择。

这是我的尝试:

首先我创建一个变量“p”来保存所选页面的url /地址,例如,如果你在我们身边,你可能会在地址栏上看到类似的内容:

website.com/index.php?p=aboutus

在菜单上,在关于我们的按钮上,我通过调用函数changeBG onClick来执行此操作:

<a href="?p=aboutus" onclick="changeBG()">About Us</a>

我认为我需要使用javascript来完成这个技巧,而这里是我存货的地方。

这是标题中的脚本:

  <script type="text/javascript">
    <?
// Set "p" value to HOME if previously empty. 
if ($_GET['p']=='') $_GET['p']='home';
    ?>  
function changeBg(pvalue) {
if (pvalue == '') {pvalue = '<?=$_GET['p'];?>';
    }
    if  (pvalue=='aboutus'){
    document.getElementById('this_is_the_first_to_be_changed').style.backgroundPosition=0 20px;
            document.getElementById('this_is_the_other_to_be_changed').style.backgroundPosition=0 80px;

            if  (pvalue=='contactus'){
            document.getElementById('this_is_the_first_to_be_changed').style.backgroundPosition=0 10px;
                   document.getElementById('this_is_the_other_to_be_changed').style.backgroundPosition=0 100px;
    }

            }
  </script> 

这是身体上发生的事情:

<div id="left_menu">
<a href="?p=aboutus" onclick="changeBG()">About Us</a>
<a href="?p=contact" onclick="changeBG()">Contact Us</a>
</div>
<div id="this_is_the_first_to_be_changed">
</div>
<div id="this_is_the_other_to_be_changed">
</div>

有人能说出为什么这不起作用吗?

1 个答案:

答案 0 :(得分:0)

使用引号尝试: style.backgroundPosition =“0 20px”;

已更新

另外,这条线怎么样: pvalue ='';

您正在设置pvalue ='= aboutus'

已更新

脚本元素不正确:

<script type="java/text">

是的:

<script type="text/javascript">

另外使用firebug或chrome来查看页面中生成的JS。