更新:在DOM呈现完成之前,无法直接将焦点应用于文本框。
我想知道为什么focus()函数不能在隐藏元素上工作。
例如(我正在使用Vue.js ):
var vm = new Vue({
el: "#app",
data:{
showtext: false
},
methods: {
showTxt(ev){
this.showtext = true
var vm = this;
// if I uncomment setTimeout, then the textbox can set focus
当模型改变时,EditForm元素会重新呈现它的子内容。这样做的一个副作用是,活动的(聚焦的)输入元素从DOM中删除,焦点丢失。
<EditForm Model="model">
<!-- Focus will not be retained when model changes -->
<InputText @bind-Value="model.Name" />
...dozen of other inputs
</EditForm>
请参阅演示:
当重新呈现EditForm时,我希望
我有一个div,我在其中添加了元素.I,每当在div中添加元素时,我都想滚动到div的底部。我知道如何在jquery .But中操作,我不知道如何使用angular js滚动。
testCaseContainer是div的id。
var elem = document.getElementById('testCaseContainer'); // just to
// scroll down
我有一个div,我在其中添加了元素.I,每当元素添加到div中,我都想滚动到div的底部。我知道如何在jquery .But中操作,我不知道如何使用angular js滚动,我知道使用jquery 。
testCaseContainer是div的id。
var elem = document.getElementById('testCaseContainer'); // just to
// scroll down
我想在页面上实现一些可拖动的元素,这些元素不应该破坏页面上当前的焦点控件。这就是我试过的:
$('input').focus();
$('div').on('mousedown', function(event) {
// event.preventDefault(); // drag does not work anymore
// $('input').focus(); // focus still lost
});
div {
display: inline-block;
border: 1px soli