scrollIntoView和焦点问题

问题描述 投票:0回答:3
var mediaIdForFocus = '<?php echo $this->mediaIdForFocus; ?>';
if(mediaIdForFocus)
$('#flagimg'+mediaIdForFocus).get(0).scrollIntoView().addClass("selectedMedia"); // highlight class
$('.logoTxt').focus();

我正在尝试调整div $('#flagimg'+mediaIdForFocus)的滚动,然后将焦点放在元素$('.logoTxt')

滚动视图被调整为元素$('#flagimg'+mediaIdForFocus),但是$('.logoTxt').focus();没有给出焦点。它仅在第一次发生。如果刷新页面,该页面将按预期工作。

请帮助我。

javascript php jquery zend-framework
3个回答
1
投票

要使元素平滑地滚动到视图中并设置焦点,您可以执行类似的操作

elm.scrollIntoView({behavior: 'smooth', block: 'center'});
elm.focus({preventScroll: true});

0
投票

$(document).scrollTop(0);做到了]

下面给出代码

// for setting the focus to selected media if it is chosen from media page.
var mediaIdForFocus = '<?php echo $this->mediaIdForFocus; ?>';
if(mediaIdForFocus)
   $('#flagimg'+mediaIdForFocus).get(0).scrollIntoView(); // highlight class
$(document).scrollTop(0);

0
投票

问题可能是代码行$('#flagimg'+mediaIdForFocus).get(0).scrollIntoView().addClass("selectedMedia");

© www.soinside.com 2019 - 2024. All rights reserved.