ping Attribute
One of the attributes I somehow missed with the HTML5 revolution was the ping
attribute; Other attributes were more popular, download
being one of them. Hell, I just stumbled upon the ping
attribute while reading an old forum post. The ping
attribute of an a
element represents a list of URLs to POST to when the link is clicked.
A sample usage of the ping
attribute would look as follows:
<a href="/checkout" ping="/tracking/going-to-cart">Checkout</a>
I tried writing the POST data to file but the PHP $_POST
array was empty, so I can only assume no data is passed. As for why you'd use the attribute...I don't know. JavaScript tools provide tracking capabilities so I can only assume these POST pings can be coupled with session tracking to get more detailed information.
Have you used the ping
attribute before? If so please let me know what you used it for!
![Designing for Simplicity]()
Before we get started, it's worth me spending a brief moment introducing myself to you. My name is Mark (or @integralist if Twitter happens to be your communication tool of choice) and I currently work for BBC News in London England as a principal engineer/tech...
![5 More HTML5 APIs You Didn’t Know Existed]()
The HTML5 revolution has provided us some awesome JavaScript and HTML APIs. Some are APIs we knew we've needed for years, others are cutting edge mobile and desktop helpers. Regardless of API strength or purpose, anything to help us better do our job is a...
![Creating Spacers with Flexbox]()
I was one of the biggest fans of flexbox before it hit but, due to being shuffled around at Mozilla, I never had the chance to use it in any practice project; thus, flexbox still seems like a bit of a mystery to me. This greatly...
![DWRequest: MooTools 1.2 AJAX Listener & Message Display]()
Though MooTools 1.2 is in its second beta stage, its basic syntax and theory changes have been hashed out. The JavaScript library continues to improve and become more flexible.
Fellow DZone Zone Leader Boyan Kostadinov wrote a very useful article detailing how you can add a...
In a similar fashion to navigator.sendBeacon, the “ping” attribute fulfills the request in the background, thus it’s not suspcentible to common document unloading problems when sending requests..
Any sense of browser support?
I remember hearing about this many years ago (I think the last draft of specs to include it were in 2010, and it hasn’t been included since), but browser support was iffy. I think FF allows it only if the user modifies their about:config, there’s no real push for IE support, and Chrome/webkit supposedly support it but that’s not enough to recommend it’s use when it’s not on track to become a spec.
It was meant to be used primary for analytics and tracking, for the reasons Adam mentions (the request wouldn’t get canceled by the navigation itself).
It is designed for advertisers. The idea is to have a banner ad that links to the advertiser while having a click tracker go to the ad supply company without having to ad 3rd party JS that who knows what it does.
Since this is designed for advertisers, Google obviously has it working in Chrome, but Firefox doesn’t really care. Because of this, the ad industry just makes the click through url hit the ad supply site for tracking and then it redirects you to the actual ad url.
Just see that Google use it on results search links