-1

我的功能似乎没有正确执行。怎么了?我已经花了 5 个小时试图让这个该死的功能发挥作用。最终我将把链接放在照片上。

 <html>
    <head>
        <script type="text/javascript">
            var pagenumber=1;
            function increase()
            {
                if(pagenumber == 1)
                {
                return
                }
                pagenumber++;
            }
            function decrease()
            {
                if(pagenumber == 5)
                {
                return
                }
                pagenumber--;
            }
            function slider() {
                if(pagenumber == 1)
                {
                document.getElementById('pg1').style.display='inline';
                document.getElementById('pg2').style.display='none';
                document.getElementById('down').style.cursor='not-allowed';
                document.getElementById('down').style.background-position='top';

            }
            if(pagenumber == 2)
            {
                document.getElementById('pg1').style.display='h';
                document.getElementById('pg3').style.display='none';
                document.getElementById('pg2').style.display='inline';                  
                document.getElementById('down').style.cursor='pointer';
                document.getElementById('down').style.background-position='bottom';

            }
            if(pagenumber == 3)
            {
                document.getElementById('pg2').style.display='none';
                document.getElementById('pg4').style.display='none';
                document.getElementById('pg3').style.display='inline';
            }
            if(pagenumber == 4)
            {
                document.getElementById('pg3').style.display='none';
                document.getElementById('pg5').style.display='none';
                document.getElementById('pg4').style.display='inline';
                document.getElementById('down').style.cursor='pointer';
                document.getElementById('up').style.background-position='top';

            }
            if(pagenumber == 5)
            {
                document.getElementById('pg4').style.display='none';
                document.getElementById('pg5').style.display='inline';
                document.getElementById('up').style.cursor='not-allowed';
                document.getElementById('up').style.background-position='bottom';
            }
        }
    </script>
</head>
<body height="183px" bgcolor="#F3F3F3" style="width:279px">
    <div id="down" style="float:left;margin-top:29px;height:27px;width:15px;display:block;cursor:pointer;background:url('website/arrow_left.png') no-repeat top left;background-repeat:no-repeat;background-position:top">
        <img src="website/pixel.png" width="15px" height="30px" onclick="decrease()" onclick="slider()">
    </div>
    <div id="up" style="float:right;margin-top:29px;height:27px;width:15px;display:block;cursor:pointer;background:url('website/arrow_right.png') no-repeat top left;background-repeat:no-repeat;background-position:top">
        <img src="website/pixel.png" width="15px" height="30px" onclick="increase()" onclick="slider()">
    </div>
    <table style="background:url('website/arrow_middle.png') no-repeat center" align="center">
            <tr id="pg1" style="display:inline">
                <td style="padding-left:25px; padding-right:25px">
                    <a href="google.com">
                        <img src="website/oil.jpg" width="75px" height="75px">
                    </a>
                </td>
                <td style="padding-right:25px">
                    <a href="amazon.com">
                        <img src="website/gas.jpg" width="75px" height="75px">
                    </a>
                </td>
            </tr>
            <tr id="pg2" style="display:none">
                <td style="padding-left:25px; padding-right:25px">
                    <a href="google.com">
                        <img src="website/nuclear.jpg" width="75px" height="75px">
                    </a>
                </td>
                <td style="padding-right:25px">
                    <a href="amazon.com">
                        <img src="website/solar.jpg" width="75px" height="75px">
                    </a>
                </td>
                </tr>
                <tr id="pg3" style="display:none">
                    <td style="padding-left:25px; padding-right:25px">
                        <a href="google.com">
                            <img src="website/wind.jpg" width="75px" height="75px">
                        </a>
                    </td>
                    <td style="padding-right:25px">
                        <a href="amazon.com">
                            <img src="website/hydro.jpg" width="75px" height="75px">
                        </a>
                    </td>
                </tr>
                <tr id="pg4" style="display:none">
                    <td style="padding-left:25px; padding-right:25px">
                        <a href="google.com">
                            <img src="website/electric.jpg" width="75px" height="75px">
                        </a>
                    </td>
                    <td style="padding-right:25px">
                        <a href="amazon.com">
                            <img src="website/thermal.jpg" width="75px" height="75px">
                        </a>
                    </td>
                </tr>
                <tr id="pg5" style="display:none">
                    <td style="padding-left:25px; padding-right:25px">
                        <a href="google.com">
                            <img src="website/mining.jpg" width="75px" height="75px">
                        </a>
                    </td>
                    <td style="padding-right:25px">
                        <a href="amazon.com">
                            <img src="website/transversal.jpg" width="75px" height="75px">
                        </a>
                    </td>
                </tr>
        </table>
    </body>
 </html>
4

3 回答 3

2

变量的美元符号仅用于 PHP 等语言。在第 7 行,当您比较 if 中的变量时,取出美元符号,您应该可以开始了。

if($pagenumber == 1)

if(pagenumber == 1)

更新 1:

此外,您的元素有 2 个不同的onclick属性集。如果您确实想要onclick调用 2 个函数,请尝试以下操作:

<img src="website/pixel.png" width="15px" height="30px" onclick="increase();slider()">

更新 2:

要通过 JavaScript 更改background-positionCSS 属性,该属性称为backgorundPosition. 所以试试这个:

document.getElementById('down').style.backgroundPosition = 'bottom';
于 2013-09-01T05:23:56.707 回答
1

问题1:

这条线是问题所在:

if($pagenumber == 1)

将此行更改为:

if(pagenumber == 1)

因为你的变量名在pagenumber这里:

var pagenumber=1;

问题2:

您在检查后立即返回pagenumber == 1,这就是它永远不会增加的原因。将您的代码更改为:

if(pagenumber == 1)
   return ++pagenumber;

如果您不想从函数返回值,那么:

function increase() {
   if(pagenumber == 1)
       pagenumber++;
}

还要确保onclick在您的 HTML 代码中只有一个事件处理程序。

于 2013-09-01T05:21:59.880 回答
0

得到它的工作:http: //jsfiddle.net/xGWp3/1/

问题 1

$pagenumber一定是pagenumber

问题 2

pagenumber永远不会增加;如果它是1,它开始于,increase()函数在它可以递增之前返回。

尝试重写increase()decrease()像这样:

function increase()
{
    if (pagenumber < 5)
    {
        pagenumber++;
    }
}

function decrease()
{
    if (pagenumber > 1)
    {
        pagenumber--;
    }
}

问题 3

您可能还需要将onclick属性更改为表单onclick="increase(); slider()";我认为您不能在单个 HTML 标记上拥有两个 onclick 属性。

问题 4

您的函数不在声明的全局范围内;尝试像这样声明它们:

increase = function ()
{
    //...
}

问题 5

document.getElementById('pg1').style.display='h';

应该

document.getElementById('pg1').style.display='none';

解决所有这些问题后,代码似乎可以工作:http: //jsfiddle.net/xGWp3/1/

于 2013-09-01T05:29:21.740 回答