Right now it is possible to navigate to a different view or render an element before the next step is loaded via the onBeforeStepChange event. However, when a new element is rendered, it cannot be targeted even if refresh() or updatePositions(). This happens because the target element is undefined (because it does not exist yet) when the steps are initially computed, and recomputing them through a refresh does not work because the target is replaced by the undefined value on the first compute.
By simply not setting the target if the element cannot be found during compute, this can be avoided and new elements can easily be targeted after calling refresh().
This is a PR that serves as a workaround/fix for https://github.com/sjmc11/tourguide-js/issues/12.
Right now it is possible to navigate to a different view or render an element before the next step is loaded via the
onBeforeStepChange
event. However, when a new element is rendered, it cannot be targeted even ifrefresh()
orupdatePositions()
. This happens because the target element is undefined (because it does not exist yet) when the steps are initially computed, and recomputing them through a refresh does not work because the target is replaced by theundefined
value on the first compute.By simply not setting the target if the element cannot be found during compute, this can be avoided and new elements can easily be targeted after calling
refresh()
.