Das würde ich lösen durch die Neuanlage einer Ebene, die bei Aufruf sichtbar ist. Der Klick auf das Objekt würde ich mit PopUp: close lösen.
Da du aber hier von einer Präsentation sprichst bin ich erst mal vorsichtig. Ich probiere das gern morgen für dich aus. Heute klappt das nicht. Mit Präsentationen arbeite ich zu selten um das aus dem Kopf zu schreiben. VG Marboe
Also, ich habe das mal getestet. So ganz klappt das nicht. Gescheitert bin ich an deinem Wunsch, dass seitenübergreifend zu machen.
Auf einer Seite allein geht es. Ich habe ein Objekt (hier kleines Bild) als wiederholtes Objekt auf zwei Seiten angelegt. Zusätzlich habe ich eine neue Ebene erstellt - Ebene 5 und dort dieses Element platziert. Damit es bei Seitenaufruf stets geladen wird, habe ich folgenden Code im Body der Website eingebracht:
<body OnLoad="xr_cpu(4), xr_cpu(11)">
Die Zahl 4 + 11 sind ermittelt worden mit einem Dummylink, der die neue Ebene aufruft. Später könnte dieser Dummy neben der Seite platziert werden; er wird also "nur" für die Codeerstellung gebraucht - dies aber dauerhaft. Er darf also nicht gelöscht werden.
Hier der Dummylink oben rechts als "Link Ebene 5" bezeichnet. Fährt man später mit der Maus über den veröffentlichten Link kann man die cpu-Zahl ablesen im Browser unten links.
Das Element selbst bekommt nun nur noch unter Link den Code:
Ergebnis ist - das Erscheinen des Objekts auf jeder Seite - das mögliche Wegklicken des Objekts auf jeder Seite
Übergreifend habe ich das nicht hingekriegt. Interessant dabei ist, dass eine neue Ebene auf der zweiten Seite im Dummylink die Nummer 11 anzeigt. Dass bedeutet, dass man dies für jede Seite der Präsentation durch einen Dummylink speziell ermitteln müsste, und diese Zahl dann im Code des Onloads per Kommatrennung jeweils ergänzt werden müsste. Fazit: ich glaube, damit wirst du nicht glücklich. Hast du schon mal an eine Animation gedacht? Vielleicht geht es damit besser. Gruß Marboe
Zwischenzeitlich bin ich zu dem gleichen Fazit gekommen: Es geht nicht!
Dein Problem ist, wie @marboe schon richtig festgestellt hat, mit den Werkzeugen, die der XD mitliefert, nicht zu lösen. Dass es trotzdem ganz einfach machbar ist, das siehst du auf der online Demo. die ich als 10seitige Präsentation angelegt habe.
Der XD "stolpert" bei den üblichen Methoden (z. B. "popup: close") darüber, dass die im aktuellen Fall mehrfach angelegte Grafik zwangsläufig unterschiedliche IDs haben muss. Die gemeinsame Bearbeitung ist damit ausgeschlossen, weil in einem Array keine unterschiedlichen IDs behandelt werden können.
Die Lösung ist aber einfach: Verwende zusätzlich zu den vom XD vergebenen IDs eine für alle betroffenen Grafiken einheitliche CSS Klasse. Die Grafiken der Klasse lassen sich dann problemlos mit einem geeigneten JavaScript manipulieren, mit dem die Grafiken z. B. ausgeblendet werden.
Für die o. a. Demo habe ich das so gelöst:
die Grafik, die ausgeblendet werden soll auf einer Seite der Präsentation anlegen
ein JavaScript mit der Funktion "function objecthide()" anlegen, mit dem die Grafiken später ausgeblendet werden.
<script>
function objecthide()
{
const collection = document.getElementsByClassName('object1');
for (let i = 0; i < collection.length; i++) {
collection[i].style.display = 'none'; // hide
setTimeout(objectshow, 6000);
}}
function objectshow()
{
const collection = document.getElementsByClassName('object1');
for (let i = 0; i < collection.length; i++) {
collection[i].style.display = 'initial'; // show
}}
</script>
das Script im HTML Head der Website (Präsentation) anlegen und der Grafik einen Link "javascript: objecthide()" auf das JScript mitgeben.
der Grafik die CSS Klasse "object1" zuweisen. Das machst du mit der Option "Name", die der XD nach einem Klick auf das Adress-Anhänger Symbol anbietet. Da trägst du den Namen "HTMLclass=objekt1" ein (ohne Anführungsstriche!)
wenn du abschließend die manipulierte Grafik auf allen Seiten wiederholen lässt, dann hast du's geschafft 😉
Im o. a. JScript sind noch ein paar Zeilen enthalten, die in der Demo dafür sorgen, dass die ausgeblendete Grafik nach 6 Sekunden wieder eingeblendet wird. Die Zeilen solltest du in der endgültigen Version natürlich löschen. Im 2. Screenshot sind die Zeilen farbig markiert und in der Textdarstellung des JScript sind sie fett, kursiv dargestellt...