当我遇到代码问题时,我只是做了最后一刻的接触:
$(document).ready(function()
{
/* Declaring some variables to help with scrolling through my Portfolio */
var workArray = [];
var scrollPos = 1;
/* This makes the left scroll arrow disappear if it's
at the start (scrollPos is less then or equal to 1) */
if (scrollPos <= 1) {
$('#left_scroll').hide();
} else {
$('#left_scroll').show();
}
/*This SHOULD decrement and increment values to the scrollPos variable
when the corresponding arrows are clicked*/
$('#left_scroll').click(function(){
scrollPos--;
});
$('#right_scroll').click(function(){
scrollPos++;
});
(left_scroll)被分配给我页面上的箭头键,该箭头键假设从值(scrollPos)中减去,该值表示左箭头图像或右箭头图像应该可见。
目前我将值scrollPos设置为1,因此左箭头键是不可见的,右箭头键是可见的,但由于某种原因,当单击其中任何一个时,它看起来不像任何值被更改为左箭头键仍然不可见。
任何人都可以看到我的代码有任何问题,希望你能提供帮助。 :d
答案 0 :(得分:2)
点击处理程序正在执行您告诉他们要执行的操作,即递增和递减。您没有告诉处理程序执行其他操作,例如某些hide
和show
。
将hide
和show
内部的逻辑放在处理程序函数中,以便在单击按钮时隐藏和显示。
答案 1 :(得分:1)
您必须在增加/减少后调用if
语句。
为此做一个功能:
function checkScrollPos() {
/* This makes the left scroll arrow disappear if it's
at the start (scrollPos is less then or equal to 1) */
if (scrollPos <= 1) {
$('#left_scroll').hide();
} else {
$('#left_scroll').show();
}
}
在click
之后,请致电:
$('#left_scroll').click(function(){
scrollPos--;
checkScrollPos();
});
$('#right_scroll').click(function(){
scrollPos++;
checkScrollPos();
});
答案 2 :(得分:0)
您的代码:
if (scrollPos <= 1) {
$('#left_scroll').hide();
} else {
$('#left_scroll').show();
}
仅执行一次。如果您想在每次点击箭头时检查scrollPos
值,请使用以下函数:
function hideOrShow(scrollPos) {
if (scrollPos <= 1) {
$('#left_scroll').hide();
} else {
$('#left_scroll').show();
}
}
$('#left_scroll').click(function(){
scrollPos--;
hideOrShow(scrollPos)
});
$('#right_scroll').click(function(){
scrollPos++;
hideOrShow(scrollPos)
});