为了账号安全,请及时绑定邮箱和手机立即绑定

React.js document.querySelectorAll() 不返回任何内容

React.js document.querySelectorAll() 不返回任何内容

慕娘9325324 2022-10-08 17:38:27
我基本上是在制作一个以 windows xp 为主题的作品集,但我很难为我的模态添加标签。我正在学习一个教程(https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/Tab_Role),我的问题是当我调用 document.querySelectorAll('[role="tab "]') 我什么也没得到。使用 querySelector() 返回 null。我在想这可能是因为在我打开模式之前尚未创建选项卡,但即便如此,事件侦听器也不应该在每次将某些内容添加到 DOM 时检查吗?也许范围是错误的,但是当我将它放在渲染中或类中的任何位置时会出现一些错误。这是我的组件:import React, { Component } from "react";import ReactDOM from "react-dom";import "xp.css/dist/XP.css";import Draggable from 'react-draggable';class AboutMeModal extends Component {    render() {        return (            <Draggable            axis="both"            handle=".tabs"            defaultPosition={{x: 40, y: -80}}            position={null}            grid={[25, 25]}            scale={1}            onStart={this.handleStart}            onDrag={this.handleDrag}            onStop={this.handleStop}>                <section className="tabs" style={{width:'calc(99%)'}}>                    <menu role="tablist" aria-label="Sample Tabs">                    <button id="tab-1" role="tab" aria-selected="true" aria-controls="tab-A" tabIndex="0">Tab A</button>                    <button id="tab-2" role="tab" aria-selected="false" aria-controls="tab-B" tabIndex="-1">Tab B</button>                    <button id="tab-3" role="tab" aria-selected="false" aria-controls="tab-C" tabIndex="-1">Tab C</button>                    </menu>                    <article role="tabpanel" id="tab-A" aria-labelledby="tab-1">                        <h3>Tab Content</h3>            </Draggable>        );    }    };
查看完整描述

1 回答

?
繁星点点滴滴

TA贡献1803条经验 获得超3个赞

DOMContentLoaded当浏览器知道 HTML 的基本结构时,只会触发一次。它在初始加载后再也不会被调用。您应该直接在按钮选项卡上挂钩您的事件:


<button id="tab-1" onClick={changeTabs} role="tab" aria-selected="true" aria-controls="tab-A" tabIndex="0">Tab A</button>

<button id="tab-2" onClick={changeTabs} role="tab" aria-selected="false" aria-controls="tab-B" tabIndex="-1">Tab B</button>

<button id="tab-3" onClick={changeTabs} role="tab" aria-selected="false" aria-controls="tab-C" tabIndex="-1">Tab C</button>


查看完整回答
反对 回复 2022-10-08
  • 1 回答
  • 0 关注
  • 227 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信