gpt4 book ai didi

javascript - jQuery 如果元素位于当前选项卡上

转载 作者:行者123 更新时间:2023-12-01 03:34:36 24 4
gpt4 key购买 nike

我正在使用tabs分解具有许多输入字段的长表单。

我的表单有 4 个选项卡,选项卡表单下方有用户选择的预览。

在选项卡下方的预览中,我放置了一些图标,允许用户向上滚动到具有输入元素的选项卡上的输入元素。

当用户正在查看他们想要向上滚动到的正确选项卡时,这非常有用。例如,如果输入元素位于选项卡 1 上并且用户正在查看选项卡 1,则用户可以向上滚动回到选项卡 1 上的该元素。

但是,如果输入元素位于选项卡 1 上并且用户正在查看选项卡 2,则向上滚动不起作用。我假设这是因为该元素在选项卡/表单上不可见(但该元素确实存在)。

所以我做了一个条件if/else语句来测试元素是否可达,但条件总是返回true。我无法弄清楚检查该元素是否可以在选项卡上访问的条件应该是什么。

我尝试了不同的条件,但都返回 true。

我希望有人能提出可行的建议。

这是我的代码:

function scrollUpSingleDocumentDetails(id){
//if(!($("#"+id).length)){
if($("#"+id).css('visibility') === 'hidden'){
$('html,body').animate({scrollTop: $("#"+id).offset().top-50},'slow');
} else {
$('html,body').animate({scrollTop: $("#id_details_headline").offset().top-50},'slow');
}
}

最佳答案

按照 get the current tab in jQuery UI tabs 检查当前选项卡

使用选项卡的 id 来获取元素,假设它是“currenttab”,并假设您的输入的 id 在“inputId”中:

var tab=document.getElementById('currentTab');
var input = document.getElementById('inputId');

if (tab.contains(input))
{
alert("input is visible")
}

关于javascript - jQuery 如果元素位于当前选项卡上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38426721/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com