Skip to main content

Giving Multiple Buttons an EventListener

I'm making a website that includes carousels and buttons. When you click the buttons it moves the carousel to the left or right to see more or previous content. I made it at first by creating two functions, one for the button that goes back and one for the button that goes forward. It worked, but I realized that I needed to make it for All of the buttons since I had multiple carousels.

var nextButton = document.querySelectorAll('.button-forward');
var backButton = document.querySelectorAll('.button-back');

nextButton.addEventListener('click', function() {
itemContainer.style.transform = 'translateX(-40%)';
});


backButton.addEventListener('click', function() {
itemContainer.style.transform = 'translateX(10%)';
});

bleehh

I tried storing all the forward and backward buttons with document.querySelectorAll and gave them a forEach method where in it is the event listener for them. The other two carousel buttons still weren't working, I also tried making them an array to see if it would help, but it didn't change anything. In summary I want to make it where I can give the event listener to all of the pairs of buttons instead of just one. Could you guys help me? If you need a better description please tell me!

var nextButton = document.querySelectorAll('.button-forward');
var backButton = document.querySelectorAll('.button-back');


nextButton.forEach(button => {
  button.addEventListener('click', nextButton => {
    itemContainer.style.transform = 'translateX(-40%)';
  })
})

backButton.forEach(button => {
  button.addEventListener('click', backButton => {
    itemContainer.style.transform = 'translateX(10%)';
  })
})

Here's my HTML structure of the carousel for those who want to know: I used the main element keep the parts of my carousel together, inside it is the visible_items div that only shows the items that are in it with overflow: scroll in CSS. Inside of that os the item_container which just contains the items. The ion-icons or buttons are at the top and bottom of the main element, and when you click them they make the item_container translate left or right making the items shown in the visible_items div change.

    <ion-icon name="chevron-back-outline" class="button-back"></ion-icon>
        <main>
            <h1>Poular Shoes</h1>
            <div class="visible_items">
                <div class="item_container">
                    <div class="items">
                    </div>
                    <div class="items">
                    </div>
                    <div class="items">

                    </div>
                    <div class="items">

                    </div>
                    <div class="items">
                    </div>
                    <div class="items">
                    </div>
                    <div class="items">
                    </div>
                    <div class="items">

                    </div>
                </div>
            </div>
            <ion-icon name="chevron-forward-outline" class="button-forward"></ion-icon>
        </main>
Via Active questions tagged javascript - Stack Overflow https://ift.tt/FTH1t2w

Comments

Popular posts from this blog

Confusion between commands.Bot and discord.Client | Which one should I use?

Whenever you look at YouTube tutorials or code from this website there is a real variation. Some developers use client = discord.Client(intents=intents) while the others use bot = commands.Bot(command_prefix="something", intents=intents) . Now I know slightly about the difference but I get errors from different places from my code when I use either of them and its confusing. Especially since there has a few changes over the years in discord.py it is hard to find the real difference. I tried sticking to discord.Client then I found that there are more features in commands.Bot . Then I found errors when using commands.Bot . An example of this is: When I try to use commands.Bot client = commands.Bot(command_prefix=">",intents=intents) async def load(): for filename in os.listdir("./Cogs"): if filename.endswith(".py"): client.load_extension(f"Cogs.{filename[:-3]}") The above doesnt giveany response from my Cogs ...

How to show number of registered users in Laravel based on usertype?

i'm trying to display data from the database in the admin dashboard i used this: <?php use Illuminate\Support\Facades\DB; $users = DB::table('users')->count(); echo $users; ?> and i have successfully get the correct data from the database but what if i want to display a specific data for example in this user table there is "usertype" that specify if the user is normal user or admin i want to user the same code above but to display a specific usertype i tried this: <?php use Illuminate\Support\Facades\DB; $users = DB::table('users')->count()->WHERE usertype =admin; echo $users; ?> but it didn't work, what am i doing wrong? source https://stackoverflow.com/questions/68199726/how-to-show-number-of-registered-users-in-laravel-based-on-usertype

Where and how is this Laravel kernel constructor called? [closed]

Where and how is this Laravel kernel constructor called? public fucntion __construct(Application $app, $Router $roouter) { } I have read the documentation and some online tutorial but I can find any clear explanation. I am learning Laravel and I am wondering where does this kernel constructor receives its arguments from. "POSTMOTERM" CLARIFICATION: Here is more clarity.I have checked the boostrap/app.php and it is only used for boostrapping the interfaces into the container class. What is not clear to me is where and how the Kernel class is instatiated and the arguments passed to the object calling the constructor.Something similar to; obj = new kernel(arg1,arg2) or, is the framework using some magic functions somewhere? Special gratitude to those who burn their eyeballs and brain cells on this trivia before it goes into a full blown menopause alias "MARKED AS DUPLICATE". To some of the itchy-finger keyboard warriors, a.k.a The mods,because I believe in th...