You are not logged in.

Dear visitor, welcome to krpano.com Forum. If this is your first visit here, please read the Help. It explains in detail how this page works. To use all features of this page, you should consider registering. Please use the registration form, to register here or read more information about the registration process. If you are already registered, please login here.

1

Friday, November 15th 2013, 10:26am

Hotspots bei Szenenwechsel "justieren" / Videos in Fullscreen

Ich habe eine Tour mehrerer Panoramen erstellt, die (neben den Hotspots zum Wechseln der Szenen) auch einige Hotspots eingebaut haben, die bei Klick eine JS Funktion ausführen:

Durch die JS Funktion wird ein jeweiliges Youtube Video in einem eigenen <div> Element eingeblendet und geladen.
Funktioniert soweit einwandfrei.

Wenn ich allerdings in Fullscreen wechsle, funktioniert das "Einblenden und Abspielen" des Video-Elements nicht, da das Panorama wegen Fullscreen API immer "über" den restlichen Dom Elementen liegt.

Ich habe jetzt eine weitere JS Funktion geschrieben, die bei onenterfullscreen diese Video Hotspots ausblendet und bei onexitfullscreen diese wieder einblendet.
Funktioniert auch.

Jetzt kommt aber der Haken: Wenn ich IN Fullscreen in ein anderes Panorama wechsle, sind dort die Video Hotspots natürlich wieder sichtbar, da (ordnungsgemäss) kein onenterfulscreen getriggert wurde und daher die Hotspots wieder da sind.

Hat jemand einen Tipp für mich? Optimal wäre, das <div> mit dem Video auch in Fullscreen anzuzeigen, dann spare ich mir die Ein- und Ausblenderei..
Oder eine Möglichkeit, nach dem Laden eines weiteren Panoramas abtesten zu können, ob man in Fullscreen ist oder nicht..

Danke, mit bestem Gruss!

Michael

2

Wednesday, November 20th 2013, 2:35pm

Hi,

eine Möglichkeit wäre z.B. eine Action zu Beginn jeder Szene aufzurufen, welche dann anhand der fullscreen Variable die entsprechenden Änderungen vornimmt...

Schöne Grüße,
Klaus

3

Monday, November 25th 2013, 5:40pm

Solved :)

Hallo Klaus,

danke für den Tipp.

Habe es gelöst. Man sieht zwar beim Laden noch kurz die Hotspots, aber damit kann ich leben.

Falls jmnd. so etwas auch einmal braucht:

Ich habe im XML File bei jeder Szene ein onloadcomplete Attribut gesetzt:

Source code

1
<events onloadcomplete="if(fullscreen,js(sceneLoaded()));" />


und dann in der verwendeten JS Datei die sceneLoaded Funktion

Source code

1
2
function sceneLoaded() {  var krpano = document.getElementById('krpanoSWFObject');  var hotspot_count = krpano.get('hotspot.count');  for(i = 0; i < hotspot_count; i++){  var hotspot = krpano.get('hotspot[ ' + i + '].name');  if (hotspot.indexOf('spot') == -1) {  krpano.set('hotspot[' + i + '].visible', 'false'); }  }
}


Besten Dank!

Michael