Domain Name System (DNS) information has a Time to Live (TTL) value. The name servers that are authoritative for your domain name will be configured for a specific TTL value. It could be 5 minutes or it could be several hours. Some DNS providers will allow you to set the TTL value yourself; others may have a default value you can't change. If you can set the value, typically you would want to adjust it to be no more than a few minutes if you were planning to move a site to a new IP address some time before making that change.
If you were accessing the site previously when it had the old IP address, your system would have queried one of the name servers it is configured to use. That name server would have looked up the IP address of the site and cached it. Your system, when it received the IP address would also have cached it. When the entry in the cache on your system and the entry in the cache of any name servers your system is configured to use expire, you will see what everybody else sees who isn't using cached data on their systems or from name servers that differ from the ones you are using.
If you are using a Microsoft Windows system, you can display cached data from a command prompt with the command below:
You can flush the cache with the command:
But, if the name servers your system uses still have the cached data, when your system queries them again, if the entry for your domain name hasn't timed out yet in their cache, they will send the old IP address to your system. If it has, they will query the authoritative name servers again and get the new IP address.
You can get a command prompt and enter the command nslookup. At the ">" prompt you will see you can enter the fully qualified domain name (FQDN) for your site, e.g. www.example.com. That will show you what the designated name servers for your domain think is its IP address. You can change the name server to another one, such as a public DNS server provided by OpenDNS, e.g., the one at 188.8.131.52, by entering the command "server 184.108.40.206" at the nslookup prompt and then entering www.example.com again to see the IP address it returns for the site as shown below. Note: the nslookup command will work on Microsoft Windows, OS X, and Linux systems.
> server 220.127.116.11
Default Server: resolver1.opendns.com
In the case above both name servers return 18.104.22.168 as the IPV4 address for www.example.com. The IP address will differ though, if your default name server is using the cached value.
The problem you describe is quite common, which is why hosting providers often advise people to allow up to 24 or even 48 hours for name server changes to propagate throughout the Internet. So it is possible that since you asked the question 3 hours ago that by now the problem has gone away.