Hallo,
ich habe auf meiner TabletUI ein fertiges Wetter Widget von wetter.com eingebunden (https://www.wetter.com/apps_und_mehr/website/homepagewidget/).
Funktionierte prima.
<div class="gridster">
<ul>
<li data-row="1" data-col="3" data-sizex="4" data-sizey="4">
<header>Wetter Test</header>
<!-- Fertiger Code von Wetter.com -->
<div id="wcom-580964e4ea5372af1af2612bc63aebef" style="border: 1px solid rgb(57, 37, 37); background-color: rgb(202, 83, 83); border-radius: 5px; color: rgb(7, 93, 240);" class="wcom-default w300x250">
<link rel="stylesheet" href="//cs3.wettercomassets.com/woys/5/css/w.css" media="all">
<div class="wcom-city"><a style="color: rgb(7, 93, 240);" href="https://www.wetter.com/deutschland/berlin/DE0001020.html" target="_blank" rel="nofollow" title="Wetter Berlin">Wetter Berlin</a></div>
<div id="wcom-580964e4ea5372af1af2612bc63aebef-weather"></div>
<script type="text/javascript" src="//cs3.wettercomassets.com/woys/5/js/w.js" defer></script>
<script type="text/javascript">_wcomWidget({id: 'wcom-580964e4ea5372af1af2612bc63aebef',location: 'DE0001020',format: '300x250',type: 'spaces'});</script></div>
</li>
</ul>
</div>
Mit der Umstellung auf Unterseiten funktioniert der Aufruf des externen Scriptes nicht mehr.
<div class="gridster">
<ul>
<li data-row="1" data-col="1" data-sizex="1" data-sizey="5">
<div class="">
<div data-type="pagebutton" data-url="#page_content_wetter.html" data-load="#content_wetter"
data-off-background-color="transparent" data-off-color="#606060"
data-on-background-color="#606060" data-on-color="#222222"
data-active-pattern=".*#page_content_wetter.html"
data-icon="fa-sun-o"
class="top-space"></div>
</div>
</li>
<li data-row="1" data-col="2" data-sizex="9" data-sizey="5">
<div class="page" id="content_wetter"></div>
</li>
</ul>
</div>
Der Rahmen und die Überschrift des "Wetter.com-Codes" wird angezeigt, der Script-Aufruf wird ignoriert.
Hat jemand eine Idee
Vielen DANK
Hallo CLS2018,
vor dem gleichen Problem stand ich auch schon. Bei einer Suche hättest du eigentlich fündig werden müssen, da sich mein Titel nicht wesentlich von deinem unterscheidet.
Benutzt du Pagetab oder Pagebutton ?
Bei Pagebutton siehe Antwort von setstate in meinem Thread.
https://forum.fhem.de/index.php/topic,77261 (https://forum.fhem.de/index.php/topic,77261)
Grüße
Tobias
Hallo Tobias,
vielen Dank für deine Antwort und sorry, dass ich deinen Eintrag nicht gefunden hatte.
Ich allerdings zugeben, dass mit das Finden nicht wirklich weitergeholfen hätte.
Ich verwendet (soviel ich weiß) keine Pagetab oder PageButton.
Ich muss auch gestehen, dass ich aktuelle nicht weiß wie ich die Lösung von setstate umsetzen sollte.
Für jede Hilfe offen.
cls2018
Man könnte den script Teil aus den Unterseiten auf die Hauptseite in den Header verlagern
<script type="text/javascript" src="lib/jquery.min.js"></script>
<script type="text/javascript" src="//cs3.wettercomassets.com/woys/5/js/w.js" defer></script>
<script type="text/javascript">
$(document).on("changedSelection", function() {
if (_wcomWidget && $('#wcom-580964e4ea5372af1af2612bc63aebef').length > 0) {
_wcomWidget({
id: 'wcom-580964e4ea5372af1af2612bc63aebef',
location: 'DE0001020',
format: '300x250',
type: 'spaces'
});
}
});
</script>
Ich habe sowohl die Lösung mit dem IFrame sowie die Verlagerung des Skriptcodes erfolgreich getestet.
Setstates Lösung habe ich jetzt tatsächlich umgesetzt.
Vielen Dank für eure Unterstützung!
CLS2018
Hallo!
Uralter Thread, aber brandaktuelles Problem aus der selben Thematik....
Wie oben beschrieben, funktioniert das Ausführen der Skripte on.changedSelection prima, aber wie funktioniert das, wenn ich damit etwas in einem Popup Dialog bewirken will, das sich in irgendeiner Sub befindet? Das ist ja leider nicht im DOM Tree vorhanden bevor man zum ersten Mal klickt.
Ein mutationObserver auf body.append feuert leider nicht, wenn der Dialog dem body appended wird. (Bei jedem anderen DOM Element beim Pageload feuert er aber...)
Hat jemand eventuell eine Anregung oder gar eine Lösung für diese Aufgabe?
Danke!
Grüße,
Sascha