Comments (3)
This is because the DOM isn't always ready (depending on use case) so the safest option is queueing the events up using $timeout
. I probably blanket applied it to all the events. If you want you can try removing it then testing it a bit, though without it you may get odd Angular errors if your event handler needs to touch the DOM, so I'm not 100% confident about it.
from angular-intro.js.
I took $timeout out of the call for onbeforechange and for me angular-introjs is now behaving more like introjs does. I think at least for onbeforechange, $timeout is probably not needed.
I'll keep playing with it and I'll probably fork angular-introjs and if it proves successful for us I'll let you know.
from angular-intro.js.
Wouldn't it be possible just to first call the corresponding function and then notify the scope?
if (scope.ngIntroOnbeforechange) {
intro.onbeforechange(function(targetElement) {
scope.ngIntroOnbeforechange.call(this, targetElement, scope);
scope.$digest();
});
}
Or to be sure that digest isn't already in progress do something like
setTimeout(scope.$digest);
from angular-intro.js.
Related Issues (20)
- Angular Example Problem HOT 1
- Append tour html to DOM element different than body.
- 1st time I am not able to load modal ui proper
- Change state and URL without closing Intro
- Commercial use? HOT 2
- Angular 1.6.9 HOT 1
- Can we get rid of bower? It's 2018 HOT 3
- Issue with loading from webpack
- Question: Install warnings and how to build the intro.js
- Sample code for using hints
- How to call anther tour after completing first tour
- Purchase license for commercial use? HOT 2
- Intro.js v2.9.3, onExit duplicate calls
- How to use with Typescript in Angularjs?
- How include in webpack?
- introJs is not a function using webpack
- Add new custom button
- IntroJs helper is black on ios HOT 1
- Intro.js not working with jquerymodal
- IntroJS element selection does not work with angular components
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from angular-intro.js.