jAddress is a javascript plugin which allows direct links to panoramas and views inside tours. It is similar to SWFAddress but has fewer features. On the other hand jAddress does work on the HTML5 viewer (for iPod and iPad). There's a comparison of the two plugins below.
jAddress only works with virtual tours using scenes. So if you have one panorama per XML file and use loadpano() on your tour, you might want to consider using SWFAddress.
jAddress requires krpano 1.0.8.14 or higher!
Here are links to an example virtual tour that uses jAddress. Note that the URL is updated when you change panorama (you can change it using the thumbnails on the bottom left). Note also that the panorama and view will change when you change the URL in the address bar.
Normal link to the tour:
http://demo.digisfera.pt/jaddress-demo
Link directly to a panorama inside the tour:
http://demo.digisfera.pt/jaddress-demo#p=thesecond
Link directly to a view inside the tour:
http://demo.digisfera.pt/jaddress-demo#p=thesecond&ath=100&atv=20&fov=135
This plugin costs 10€, which includes future updates. It can be bought from share-it.
To setup jAddress, you need to include "jaddress.xml" on your KRPano XML and load the required javascript files on your HTML page. Then you only need to call the action ja-start() instead of loadscene() when your tour starts. An example is included on the download package.
Add the following code to your HTML page:
<script src="//f.digisfera.pt/jquery-1.6.4.min.js"></script>
<script src="//f.digisfera.pt/jquery.ba-bbq.min.js"></script>
<script src="jaddress-min.js" type="text/javascript"></script>
This will use javascript files hosted on Digisfera's server. Alternatively, you can download them from:
Usually when the tour starts there is an action which calls loadscene(), like this:
<action name="startup">
loadscene(get(scene[0].name), null, MERGE);
</action >
To use jAddress, you only need to change the call to loadscene() by a call to ja-start(), so that the new code looks like this:
<action name="startup">
ja-start(get(scene[0].name));
</action >
Here is a comparison between jAddress and SWFAddress. It should be taken with a grain of salt, since it's understandably difficult to take my opinion as unbiased ;-)
In my opinion, SWFAddress has the following advantages: