我想在IcePush Render更新上执行一些自定义代码。 IcePush本身正在工作(也是多个portlet)
所以我想要做的就是将图像调整到给定的宽高比并放置标记引脚(从谷歌地图中获知)。但是这些标记(和图像)是通过IcePush动态更新的。
因此,如果我使用JQuery的ready(),它第一次工作,但在页面更新后失败。
问候弗洛里安
答案 0 :(得分:0)
我已经解决了!如果您更改JS代码,它将在AJAX更新后执行。 像这样:
<script type="text/javascript">
function resizeStage() {
var prefWidth=maxWidth*(1+(0.1*zoomFactor));
jQuery(".slide_" + slideUUID).width(prefWidth);
var actualWidth=jQuery(".slide_" + slideUUID).width();
jQuery(".slide_" + slideUUID).height(actualWidth * 3 / 4); // Fix to 4x3
}
// This will be executed after AJAX Update
// Because the var slideUUID changes after each AJAX Update
var slideUUID = "#{navigationBackingBean.currentSlide.uuid}"; // To identify slide and to execute JS after AJAX udpate!
resizeStage();
jQuery(window).unbind('resize', resizeStage)
jQuery(window).resize(resizeStage);
</script>