Code Monkey home page Code Monkey logo

Comments (11)

warmthsea avatar warmthsea commented on June 25, 2024

Do you mean that when el-slider changes, the home end event you customized elsewhere is executed?

from element-plus.

minguo avatar minguo commented on June 25, 2024

Do you mean that when el-slider changes, the home end event you customized elsewhere is executed?

是的,我不需要slider去响应home和end按键的事件,因为这两个按键已经被绑定做其他事情,而且我的应用里也不需要用快捷键去调整至最小值或最大值

from element-plus.

warmthsea avatar warmthsea commented on June 25, 2024

Will this problem occur with el-number-input?

from element-plus.

minguo avatar minguo commented on June 25, 2024

Will this problem occur with el-number-input?

我没有使用el-number-input ,只使用了 el-slider,当el-slider获得焦点的时候,就会响应home按键

from element-plus.

warmthsea avatar warmthsea commented on June 25, 2024

It would be better to provide a detailed example in the playground.
This may help you solve the problem faster.

from element-plus.

minguo avatar minguo commented on June 25, 2024

It would be better to provide a detailed example in the playground.

其实不需要我提供一个自己的example,官网上的sl-slider的例子就可以测试呀
https://element-plus.org/zh-CN/component/slider.html
只要el-slider获得焦点,你按home按键或者end按键,他都会自动调整到最小值或者最大值
你可以测试一下,但是我在官方文档却没看到有提供 移除这种快捷按键的办法

而且我上面提交的资料里,有一个playground的例子,我已经提供了

from element-plus.

warmthsea avatar warmthsea commented on June 25, 2024

I see

from element-plus.

warmthsea avatar warmthsea commented on June 25, 2024

You can set a public value to temporarily solve your problem.

https://element-plus.run/#eyJzcmMvQXBwLnZ1ZSI6Ijx0ZW1wbGF0ZT5cbiAgPGRpdiBAY2xpY2s9XCJ0YWcgPSBmYWxzZVwiIGNsYXNzPVwic2xpZGVyLWRlbW8tYmxvY2tcIj5cbiAgICA8ZWwtc2xpZGVyIEBjbGljay5zdG9wPVwidGFnID0gdHJ1ZVwiIHYtbW9kZWw9XCJ2YWx1ZVwiIHNob3ctaW5wdXQgLz5cbiAgPC9kaXY+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0IGxhbmc9XCJ0c1wiIHNldHVwPlxuaW1wb3J0IHsgcmVmIH0gZnJvbSAndnVlJ1xuY29uc3QgdmFsdWUgPSByZWYoMClcblxuLy8gcHVibGljIHN0b3JlIHZhbHVlXG5jb25zdCB0YWcgPSByZWYoZmFsc2UpXG5cbi8vIGhvbWUvZW5kIGV2ZW50IGZ1bmN0aW9uXG4vLyBpZih0YWcudmFsdWUpIHJldHVyblxuLy8geW91IGNvZGVcbjwvc2NyaXB0PlxuXG48c3R5bGUgc2NvcGVkPlxuLnNsaWRlci1kZW1vLWJsb2NrIHtcbiAgbWF4LXdpZHRoOiA2MDBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5zbGlkZXItZGVtby1ibG9jayAuZWwtc2xpZGVyIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWxlZnQ6IDEycHg7XG59XG48L3N0eWxlPlxuIiwiaW1wb3J0LW1hcC5qc29uIjoie1xuICBcImltcG9ydHNcIjoge31cbn0iLCJ0c2NvbmZpZy5qc29uIjoie1xuICBcImNvbXBpbGVyT3B0aW9uc1wiOiB7XG4gICAgXCJ0YXJnZXRcIjogXCJFU05leHRcIixcbiAgICBcImpzeFwiOiBcInByZXNlcnZlXCIsXG4gICAgXCJtb2R1bGVcIjogXCJFU05leHRcIixcbiAgICBcIm1vZHVsZVJlc29sdXRpb25cIjogXCJCdW5kbGVyXCIsXG4gICAgXCJ0eXBlc1wiOiBbXCJlbGVtZW50LXBsdXMvZ2xvYmFsLmQudHNcIl0sXG4gICAgXCJhbGxvd0ltcG9ydGluZ1RzRXh0ZW5zaW9uc1wiOiB0cnVlLFxuICAgIFwiYWxsb3dKc1wiOiB0cnVlLFxuICAgIFwiY2hlY2tKc1wiOiB0cnVlXG4gIH0sXG4gIFwidnVlQ29tcGlsZXJPcHRpb25zXCI6IHtcbiAgICBcInRhcmdldFwiOiAzLjNcbiAgfVxufVxuIiwiX28iOnt9fQ==

from element-plus.

minguo avatar minguo commented on June 25, 2024

You can set a public value to temporarily solve your problem.

https://element-plus.run/#eyJzcmMvQXBwLnZ1ZSI6Ijx0ZW1wbGF0ZT5cbiAgPGRpdiBAY2xpY2s9XCJ0YWcgPSBmYWxzZVwiIGNsYXNzPVwic2xpZGVyLWRlbW8tYmxvY2tcIj5cbiAgICA8ZWwtc2xpZGVyIEBjbGljay5zdG9wPVwidGFnID0gdHJ1ZVwiIHYtbW9kZWw9XCJ2YWx1ZVwiIHNob3ctaW5wdXQgLz5cbiAgPC9kaXY+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0IGxhbmc9XCJ0c1wiIHNldHVwPlxuaW1wb3J0IHsgcmVmIH0gZnJvbSAndnVlJ1xuY29uc3QgdmFsdWUgPSByZWYoMClcblxuLy8gcHVibGljIHN0b3JlIHZhbHVlXG5jb25zdCB0YWcgPSByZWYoZmFsc2UpXG5cbi8vIGhvbWUvZW5kIGV2ZW50IGZ1bmN0aW9uXG4vLyBpZih0YWcudmFsdWUpIHJldHVyblxuLy8geW91IGNvZGVcbjwvc2NyaXB0PlxuXG48c3R5bGUgc2NvcGVkPlxuLnNsaWRlci1kZW1vLWJsb2NrIHtcbiAgbWF4LXdpZHRoOiA2MDBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5zbGlkZXItZGVtby1ibG9jayAuZWwtc2xpZGVyIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWxlZnQ6IDEycHg7XG59XG48L3N0eWxlPlxuIiwiaW1wb3J0LW1hcC5qc29uIjoie1xuICBcImltcG9ydHNcIjoge31cbn0iLCJ0c2NvbmZpZy5qc29uIjoie1xuICBcImNvbXBpbGVyT3B0aW9uc1wiOiB7XG4gICAgXCJ0YXJnZXRcIjogXCJFU05leHRcIixcbiAgICBcImpzeFwiOiBcInByZXNlcnZlXCIsXG4gICAgXCJtb2R1bGVcIjogXCJFU05leHRcIixcbiAgICBcIm1vZHVsZVJlc29sdXRpb25cIjogXCJCdW5kbGVyXCIsXG4gICAgXCJ0eXBlc1wiOiBbXCJlbGVtZW50LXBsdXMvZ2xvYmFsLmQudHNcIl0sXG4gICAgXCJhbGxvd0ltcG9ydGluZ1RzRXh0ZW5zaW9uc1wiOiB0cnVlLFxuICAgIFwiYWxsb3dKc1wiOiB0cnVlLFxuICAgIFwiY2hlY2tKc1wiOiB0cnVlXG4gIH0sXG4gIFwidnVlQ29tcGlsZXJPcHRpb25zXCI6IHtcbiAgICBcInRhcmdldFwiOiAzLjNcbiAgfVxufVxuIiwiX28iOnt9fQ==

没什么变化,只要点击slider的滑块,然后按home或者end按键,一样是可以操作这个slider,@click.stop 好像并没有起任何作用,我发现@keydown.stop 可以拦截键盘事件传递给子元素,但是对这个slider无效,并不能阻止他响应键盘事件,他内部是如何实现的?全局键盘监听?现在好像并没有办法让他不响应....

from element-plus.

minguo avatar minguo commented on June 25, 2024

You can set a public value to temporarily solve your problem.

https://element-plus.run/#eyJzcmMvQXBwLnZ1ZSI6Ijx0ZW1wbGF0ZT5cbiAgPGRpdiBAY2xpY2s9XCJ0YWcgPSBmYWxzZVwiIGNsYXNzPVwic2xpZGVyLWRlbW8tYmxvY2tcIj5cbiAgICA8ZWwtc2xpZGVyIEBjbGljay5zdG9wPVwidGFnID0gdHJ1ZVwiIHYtbW9kZWw9XCJ2YWx1ZVwiIHNob3ctaW5wdXQgLz5cbiAgPC9kaXY+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0IGxhbmc9XCJ0c1wiIHNldHVwPlxuaW1wb3J0IHsgcmVmIH0gZnJvbSAndnVlJ1xuY29uc3QgdmFsdWUgPSByZWYoMClcblxuLy8gcHVibGljIHN0b3JlIHZhbHVlXG5jb25zdCB0YWcgPSByZWYoZmFsc2UpXG5cbi8vIGhvbWUvZW5kIGV2ZW50IGZ1bmN0aW9uXG4vLyBpZih0YWcudmFsdWUpIHJldHVyblxuLy8geW91IGNvZGVcbjwvc2NyaXB0PlxuXG48c3R5bGUgc2NvcGVkPlxuLnNsaWRlci1kZW1vLWJsb2NrIHtcbiAgbWF4LXdpZHRoOiA2MDBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5zbGlkZXItZGVtby1ibG9jayAuZWwtc2xpZGVyIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWxlZnQ6IDEycHg7XG59XG48L3N0eWxlPlxuIiwiaW1wb3J0LW1hcC5qc29uIjoie1xuICBcImltcG9ydHNcIjoge31cbn0iLCJ0c2NvbmZpZy5qc29uIjoie1xuICBcImNvbXBpbGVyT3B0aW9uc1wiOiB7XG4gICAgXCJ0YXJnZXRcIjogXCJFU05leHRcIixcbiAgICBcImpzeFwiOiBcInByZXNlcnZlXCIsXG4gICAgXCJtb2R1bGVcIjogXCJFU05leHRcIixcbiAgICBcIm1vZHVsZVJlc29sdXRpb25cIjogXCJCdW5kbGVyXCIsXG4gICAgXCJ0eXBlc1wiOiBbXCJlbGVtZW50LXBsdXMvZ2xvYmFsLmQudHNcIl0sXG4gICAgXCJhbGxvd0ltcG9ydGluZ1RzRXh0ZW5zaW9uc1wiOiB0cnVlLFxuICAgIFwiYWxsb3dKc1wiOiB0cnVlLFxuICAgIFwiY2hlY2tKc1wiOiB0cnVlXG4gIH0sXG4gIFwidnVlQ29tcGlsZXJPcHRpb25zXCI6IHtcbiAgICBcInRhcmdldFwiOiAzLjNcbiAgfVxufVxuIiwiX28iOnt9fQ==

找到办法了,我翻了下他的代码
const onHomeKeyDown = () => {
if (disabled.value) return
setPosition(0)
emitChange()
}

我在keydown.capture 中设置disable, keyup.capture中取消disable就可以了,他并没有提供取消的办法,唯一让他不响应的就是disable状态,只能这么处理

from element-plus.

warmthsea avatar warmthsea commented on June 25, 2024

It is best to handle this problem by adding a new props attribute with a default value of true.
You can try submitting a PR yourself or wait for someone else or me to be available to fix this.

from element-plus.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.