我想要实现的是,当用户点击输入字段时,我希望搜索栏位于页面顶部。我使用hasFocus
但它只在我再次点击搜索栏后第一次加载页面时才有效。
<div class=".home-search-panel">
<input type="search" data-bind="hasFocus: searchInputFocus()" name="q" placeholder="@Global.SearchPlaceholderCopy" value="@Request.QueryString["q"]" maxlength="150" class="input-product-search" autocomplete="off" />
</div>
这是我的淘汰赛代码
var searchInputFocus = function () {
document.body.scrollTop = zepto('.home-search-panel').offset().top;
};
我认为这段代码使用的是DOM操作,如果不使用jquery-jasmine
如何以淘汰的方式做这样的事情就更难测试,这样我就可以正确地测试它了吗?
答案 0 :(得分:1)
我的想法......
data-bind="event: { onfocus: searchInputFocus}"
在这种情况下,当输入框具有焦点时,将调用searchInputFocus函数。 希望有所帮助。