framework7io / framework7

Full featured HTML framework for building iOS & Android apps
http://framework7.io
MIT License
18.14k stars 3.23k forks source link

Button freezing on MD #2418

Closed EriveltonMS closed 5 years ago

EriveltonMS commented 6 years ago

This is a (multiple allowed):

What you did

Create left panel on app. Programming was not used, only the standard framework css. I used the panel of the template itself to create my model.

`

</div>`

Expected Behavior

Ripple animated buttons using the MD standard

Actual Behavior

Button ripple animation on panel is "freezing", not returning to the default state. Home buttom too.

localhost_3000_ galaxy s5 localhost_3000_ galaxy s5 1 localhost_3000_ galaxy s5 2

ghost commented 6 years ago

I have the same problem on my App.

:(

EriveltonMS commented 6 years ago

@l41lt0n , temporarily disable the ripple by changing the parameter in the app configuration

touch:{ materialRipple:false, }

with this the problem disappears, but the effect too.

nolimits4web commented 6 years ago

Do you see any errors in browser console?

ghost commented 6 years ago

@nolimits4web

For me it dont show nothing on the console. only the events Javascript not works. It still freezed. so I need to close the app and reopen and it works again.

EriveltonMS commented 6 years ago

@nolimits4web , same from @l41lt0n, only freeze, no errors.

ghost commented 6 years ago

@EriveltonMS,

I am doing test "materialRipple:false", for now everything is working.

for you it solve the problem? the events is fired now?

Let's see the result :)

ghost commented 6 years ago

@nolimits4web

I think that problem is not on the framework7.

It start to happen when app go to background and stay there for a time. I have the same issue on the iOS/Android

I have used materialRipple:false but the result is the same (only without animation/effect on the button), no javascript function is fired.

doradsoft commented 6 years ago

I am experiencing the same problem too. Thanks to god i have managed to somehow reproduce it. JSFiddle. Instructions:

  1. Use chrome
  2. Open console
  3. Tap like a crazy (swiping a little bit helps) inside the left link in the bottom.
    • You may need to fit the iteration numbers in the loop inside "logics" function to your cpu skills. In my case 100 wasn't enough to reproduce the bug, whilst 10000 was too much.
EriveltonMS commented 6 years ago

I detected that my application had two initializations of the framework7, one of them without any option (remnant of the phonegap template). After removing one of them, the effect returned to work.

doradsoft commented 6 years ago

@nolimits4web sent you a mail with a real reproduce.

fdamore-xnoova commented 6 years ago

same issue, tap like a crazy with chrome/desktop or chrome/mobile in every button with md effect, the effect freeze and add a trasparent white layer every time i tap on button

fdamore-xnoova commented 6 years ago

@EriveltonMS i used your code

touch:{ materialRipple:false, }

and the bug is fixed. the effect remain

fdamore-xnoova commented 6 years ago

@EriveltonMS sorry, i didnt fix by using your code. Instead i forgot a comma and i generate a syntax error. But with the syntax error the md effect works correctly! :-\

var app = new Framework7({ ... view: { pushState: true, } //<-- comma missed touch:{ materialRipple:false, } });

fdamore-xnoova commented 6 years ago

touch:{ materialRipple:false, } doesnt work for me, but im using class "no-ripple" in every link/button

fatihtkale commented 6 years ago

is this fixed yet?

doradsoft commented 6 years ago

Isn't fixed yet. 3.1.1 reproduce.

geoorg30 commented 6 years ago

I have same issue, and after inspection using chrome dev tools, i found the issue is caused by the panel-reveal overlay. This blocks the UI with a transparent div.

fatihtkale commented 6 years ago

I found out it was because i had 2 linked Framework7 in my app.js file

stale[bot] commented 5 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

doradsoft commented 5 years ago

I think it worth fixing

oleksandr-sovenko commented 5 years ago

I have the same problem cordova + framework7, I noticed it happens when framework7 is working under cordova, but without cordova looks good. I can't understand why so :|. I will use touch:{ materialRipple:false }

mmis1000 commented 5 years ago

I actully can reproduce this issue reliably on desktop by rapidly abuse click on tabbar buttons, unsure if it has the same cause though.

using desktop firefox, enable adaptability design mode in 12 menu, enale touch support, find a tabbar in
https://framework7.io/kitchen-sink/core/?theme=md
spam clicks very fast on it,
it should freeze like this

default

Maybe it is a good start to find out what was gone wrong here.

Edited:

Also about to reproduce the exact same proble default

doradsoft commented 5 years ago

@mmis1000 repoduced in chrome (@oleksandr-sovenko: without cordova): repoduce

doradsoft commented 5 years ago

Still happening in 3.6.5

fatihtkale commented 5 years ago

Guys check if you have framework7 implemtet twice in you app.js thats what fixed it for me.

oleksandr-sovenko commented 5 years ago

aah damn yes. might be. I noticed "twice initialization app.js" in my app too. And removed. ... But now need to try remove now touch:{ materialRipple:false }. Thx.

I had twice initialized app.js, because I use webpack. But webpack add app.js automatically, plus I have app.js in my index.html template. That why I had twice initialized app.js.