-
-
Notifications
You must be signed in to change notification settings - Fork 33.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
<progress> value attribute fails while in Vue document on internet explorer 11 #6561
Comments
It works nicely for me (copied your code into a fiddle: http://jsfiddle.net/hhrby3sg/ because a project for that is an overkill) You may want to ask for help on the forum, the Discord server |
It works for me on jsfiddle as well. I meant to mention that but it was late. I will try Discord again. The progess bars only don't work when within a .Vue document. I put them outside of the template and they work fine. I guess github isn't the place to get help. |
I edited the original post as I have realized that assigning a number rather a variable does the same thing. |
I see, I tired and it does happens only with webpack. It's quite strange.... It may be something with the webpack config or vue-loader. Maybe it's being transpiled to drop support with IE |
I appreciate you looking. I was trying to look through vue-loader but I'm not familiar enough. I'm just going to go back to hand rolled progress bars. Thanks again. |
@posva actually, I still think this is a bug. Here's why. When you remove dynamic value binding in your example, it stops working in IE11. Looks like the value needs to be added using domProps not attrs Working example using custom component - http://jsfiddle.net/rgk59d4e/2/ And I guess the progress element check needs to be added here vue/src/platforms/web/util/attrs.js Line 10 in a12d32a
Btw. Edge has the same problem ;) |
@sqal You're right, it should be a dom prop, since you find the culprit, I'll let you do the PR, I'm unsure if a test is necessary for this, maybe in a compiler test Thanks a lot btw |
@posva hmm I played with this a bit further and turns out the issue is not related to domProps/attrs, because, adding This still works:
and the value as a string does not:
But when we add in line
(isIE9 || isIE || isEdge) && attrs.value !== oldAttrs.value) then the issue is gone. I am not sure if throwing isIE || isEdge is the correct fix though and won't affect other things, so I think i will leave this issue to someone from the core team to fix ;)
|
Thank you very much for looking to this, @sqal. It's always comforting to know I wasn't doing something wonky. |
mmh, that's really, weird, it should work when using |
It only fails when you are using string-based templates. So if you change the fiddle to use a string template instead of in-dom template, it would fail too. Adding |
Should this be working on 2.4.4? |
Version
2.4.2
Reproduction link
https://github.com/busheezy/what-am-i-doing
Steps to reproduce
yarn
npm run dev
open link in internet explorer 11 and compare to chrome
What is expected?
<progress value="50" max="100.0">50</progress>
assigns value to50
inside Vue document.What is actually happening?
<progress value="50" max="100.0">50</progress>
assigns value to1
inside Vue document.Thanks. Sorry if I'm doing something silly.
<progress value="50" max="100.0">50</progress>
assigns value to50
works correctly outside of the app.The text was updated successfully, but these errors were encountered: