Topic: Web

Design and operation of websites

Lightbox with PhotoSwipe

In the past I have used the plugin “Responsive Lightbox” for the enlarged display of pictures. Unfortunately, this solution had some weaknesses:

  • No possibility to enlarge the picture view.
  • Swipe gestures are quite “jerky” – you can see how the picture view follows the finger movement very slowly

In particular, I noticed the lack of the possibility of image magnification on another website, where I have seen people who have tried to enlarge individual images with the common two-finger gesture on their smartphones.

As an alternative, I finally discovered PhotoSwipe – a JavaScript library that not only allows you to magnify images with a mouse click or finger gestures, but also provides a full-screen view. Also, the response to input is much snappier as in “Responsive Lightbox”.

Continue reading

Error in the editor of WordPress 4.6

Recently WordPress 4.6 was released. Unfortunately there is a little error in the text editor: when you move down in content in the “text” view and then edit something it may happen that the view jumps back to the top.

This error is also documented in the Trac of WordPress and there is also a fix for it which will be used for the upcoming version 4.6.1.

Good bye ancient software

In the past I also supported quite old software on my web site technically:

  • Internet Explorer 8 (and older), which was published on March 5, 2008.
  • Windows XP, whose official support has ended in April 2014 and which lacks support for SNI. Browsers running in Windows XP which don’t bring their own TLS implementation can not access my website using HTTPS (for example Chrome or Internet Explorer).
  • Android 2 or older which also lacks the support for SNI.

Now it is August 2016. Windows XP and older versions of the Internet Explorer are obsolete and not widely used any longer. For example only 0.1% of the requests on my web site where using Internet Explorer 8. Older versions are practically non-existent. For Android 2 the situation is similar: less than 0.1%.

Therefore I decided to stop the support of this ancient software from now on. The web site now also uses HTTPS always (which means the browsers have to support SNI) and html5shiv is also not used any longer.

PS: My web site is still barrier-free and can also be used without JavaScript.

Extended example for WebGL

My example for WebGL was extended to handle touch events on smartphones and tablets.

At the moment only touches with one finger will be handled like click and drag using a mouse, so you can rotate the model with one finger. The recognition of gestures with two fingers for “pinch to zoom” is missing yet.

Versioning of static resources in WordPress

If you deal with WordPress you soon notice that static resources like style sheets or scripts get included with the parameter “ver”, as for example in the “Hemingway” theme:

href='http://server.example/wp-content/themes/hemingway/style.css?ver=4.1'

If you then validate the website, as for example with Pingdom, the “ver” parameter will be treated as a problem for efficient caching since content delivered by URLs with parameters may not be stored in a cache but fetched from the original server for every single request.

On the other hand the version information is important for the correct function of themes and plugins, especially when they get updated – if you are an author in this area you should definitely pay attention to the note at the end of this post.

Continue reading