JavaScript How do I animate scroll on a mobile webbrowser using jQuery? animate scrolltop mobile,animation scroll mobile,jquery animate scroll mobile,

What I wan't to achieve is the page to scroll to a certain position when a button is pressed. I have this working on browsers like Chrome and IE but it doesn't seem to work on any mobile browser.

This is the code I use:

$("#programmaMenu").on("click", "div", function(event){
        event.preventDefault();
        $('html').stop().animate({
            scrollTop: $("#"+$(this).attr("rel")).position().top - 120
        }, 500, 'swing');
});

The event does fire, only the scrolling doesn't occur.

Answer:1

With thanks to the user vohuman, this is the answer:

Apparently mobile browsers scroll the body element and desktop browsers scroll the html element. Therefor, the solution to the question is selecting both the elements 'html' and 'body' like so:

$("#programmaMenu").on("click", "div", function(event){
        event.preventDefault();
        $('html, body').stop().animate({
            scrollTop: $("#"+$(this).attr("rel")).position().top - 120
        }, 500, 'swing');
});
Answer:2

Here is the Initialise function..... function initialize() { Here the variables $Latitude,$Longitude are array values so how can i store them in Javascript Variables so that they can store ...

Here is the Initialise function..... function initialize() { Here the variables $Latitude,$Longitude are array values so how can i store them in Javascript Variables so that they can store ...

  1. show multiple areas google maps

I'm using that code to kill frames using my page: if(self == top) { document.documentElement.style.display = 'block'; } else { top.location = self.location; }; But I want ...

I'm using that code to kill frames using my page: if(self == top) { document.documentElement.style.display = 'block'; } else { top.location = self.location; }; But I want ...

I've created a convenience method that adds a default error handler for my ajax calls: function myAjaxFunction(url, data) { return $.ajax({ url: url, data: data }).fail(...

I've created a convenience method that adds a default error handler for my ajax calls: function myAjaxFunction(url, data) { return $.ajax({ url: url, data: data }).fail(...

I fail to make a checkbox do a simple alert like I try here: https://jsfiddle.net/2n3dyLhh/5/ The problem is datatables (or how I use it) because when I do not include the library the listeners work ...

I fail to make a checkbox do a simple alert like I try here: https://jsfiddle.net/2n3dyLhh/5/ The problem is datatables (or how I use it) because when I do not include the library the listeners work ...