How to lazy load texts in a webpage - lazy-loading

I have a webpage which conatins more than ten thousand lines. It is difficult to load that page in mobile browsers. Is it possible to lazy load texts in that web page? I don't want to create multiple pages and split content to each page. I found a plugin Jscroll. Is it suitable for it or any other alternative available?

jQuery Lazy Scroll Loading Plugin could be able to help you a great deal. It's very easy to use yet useful jQuery plugin that makes your site load faster and saves bandwidth. Uses jQuery Lazy Scroll Loading Plugin to only load html element (image, text, div, etc...) when it's visible in the viewport.

Related

Home page with or without slides

I am making a static website for a friend of mine and the page load time is very crucial for the project since the Internet speed is rather slower in rural areas(near mountains, forests). My question is Does making home page with carousel slides slow down page load time comparing to a page without slides?
Yes, Obviously as you are increasing the loading of content but can be fast if you are cdn(content delivery network) such as cloudinay using the static color and css effects as many of the site are doing to load their content

Different hidden content for mobile - SEO?

I have created two different layouts (with bootstrap) on the same page. One for mobile, one for desktop. Website has different pages with complex structure. Some of blocks should be visible only in desktop and vice-versa.
Here is an example page: (other pages are different, but has the same problems)
Title A, Title N... are links, they:
On desktop: sets content to top block "Text content A" from hidden
red area.
On mobile: just scrolls down to corresponding content.
There is no problems, everything works. But...
I am afraid that website will be blacklisted by Google.
There are too much hidden content - images, links (visible-xs and
etc.)
Content even placed outside the div with overflow:hidden;
Yes, it will be easier to put content on page and just let user scroll on desktop and mobile versions without any hidden content and popovers, but this website needs to be created as designed.
Now i have two different ideas to avoid problems with SEO.
Just create different mobile theme on subdomain.
Use one responsive layout for both desktop and mobile, but avoid hiding content via css - instead hide unnecessary content with jQuery and load additional content with Ajax. (I prefer this but it looks strange)
So, how you usually solve similar tasks?
There are no any problem.Don't worry!
It is natural.Google can crawl both mobile and desktop elements and can detect difference of hidden content from mobile view and desktop view.
Also any hidden contents have not problem for SEO.
Just hidden links and contents for Black-Hat purposes (for example cloaking) are bad for SEO.
So don't worry.Keep your hidden contents and stay in your current way.
Aslo follow this guides for choosing the best methods of designing responsive website:
https://developers.google.com/webmasters/mobile-sites/?hl=en
https://developers.google.com/web/fundamentals/layouts/rwd-fundamentals/index.html?hl=en
https://developers.google.com/webmasters/mobile-sites/mobile-seo/configurations/responsive-design?hl=en
And check your site here:
https://www.google.com/webmasters/tools/mobile-friendly/

How can I disable the mobile theme for a single page?

I recently uploaded custom html and css for one page on my big commerce store.The page is responsive, and mobile optimized. It works on desktops, but is over ridden by the generic mobile theme that is installed when I view it on my phone. How can I stop this page from being over ridden by the mobile version, without disabling the mobile theme completely?
Thanks,
There are 2 methods off the top of my head.
First method
Any HTML file on BigCommerce, with a mobile/responsive theme, has 2 copies of some part of the HTML page. The mobile HTML/CSS is simply triggered by an HTML class mobile on the HTML copy that is there to be only seen on mobile, which contains one copy of relevant HTML (ie, menus, logo, shopping cart icon and link, etc).
Another HTML block has class desktop and is only triggered for certain screen sizes (similar to mobile), and only shows it's desktop version of the HTMl when the screen size conditions are met.
So if screen is small, in your responsive.css file, .mobile is display:none;, while desktop class has all the proper visible CSS.
On the reverse, on desktop-sized screens, the desktop HTML is properly styled, while the mobile class HTML block is display:none.
So, in this first solution, you would simply place a copy of your custom HTMl and style it properly for display on mobile screens. This way, the mobile-styled version will only show up on mobile devices, while the desktop properly-styled version will only show up on dektop size screens. As far as BC goes, I think this is the optimal method.
Second method
You can make a custom template for the page in question. So if it's product.html and you want it custom for some specific product(s), you would create a product-custom.html and place it in your WebDav "/template/Panels" folder.
Now, on your product(s) which must use the new custom HTML, go to their page and scroll to the bottom and you will see a template file selection box, which should say product.html. Change that to your new product-custom.html.
Now, as for the custom file, simply edit the HTML/CSS rules revolving around .desktop and .mobile class (possibly just removing them all together) so that when a page is loaded on a small screen, the CSS rule to hide the desktop version won't apply. At the same time, you should delete the duplicate .mobile class HTML as it will no longer be needed.
This second method is much more flexible but also takes more work and is generally much more messy and requires much more maintenance.
I strongly recommend method #1.
Let me know if this helps and if you have nay other questions.

jQuery Animation

I am trying to recreate some effects similar to the div loading effects on this site i.e. there is no visible content when you load the page but upon clicking on a navigation link, it dynamically loads the divs.
http://worldofmerix.com
It is for a film studio website and I would like it to be interactive like this site. Does anyone know how I could achieve these effects with Javascript and/or jQuery?
Thanks for all the help in advance!
Have you used jQuery before or looked at the docs? This is really quite simple using jQuery's built-in animation effects such as fadeIn. The site you've linked to doesn't dynamically load the content - it's all part of the same page and simply displayed and hidden as appropriate.
Here's a rough fiddle showing how it works. Of course, you'd need to work out the styles and quirks in animations.

Does changing the order of HTML with Javascript help SEO

On my website, I have a booking widget at the top of each page to allow visitors to enter our booking engine. The code behind it uses quite a bit of HTML, pushing down the content on each page in the source. In an attempt to better my SEO, I decided to have the code placed in a DIV tag at the bottom of the page, and, when the DOM is ready, I use JQuery to physically move the DIV from the bottom of the DOM to the top where it needs to be to render correctly.
My question is if this is really helping SEO? Does Google look at the DOM/Source after all Javascript has run, or before? Does moving these few hundred lines of HTML to the bottom of the HTML source gain me any advantage?
Spiders do not process javascript. So any content that appears/moves or is created by javascript will appear as if it hasn't been moved or created at all.
I'd be really surprised if web crawlers execute the scripts on the page. They probably scan the raw response.
That doesnot have any effect on the SEO.
But placing the javascript at the bottom will defnitely help you to load the webpages faster.
There is no harm for SEO as well, you can defnitely proceed with your approach
There is a distinction between javascript executed on load versus during the user session. The on-load javascript is more times than not indexed by google. The dynamic content or alterations on the client side are not well indexed.
So, it can't be ignored.