• 请不要在回答技术问题时复制粘贴 AI 生成的内容
Irisxx
V2EX  ›  程序员

iOS WebKit 和 JS 交互

  •  
  •   Irisxx · Jul 5, 2024 · 2327 views
    This topic created in 859 days ago, the information mentioned may be changed or developed.

    https://vr.justeasy.cn/view/xz165se6x8k14880-1657179172.html webview 加载这个 url, 由于左上角那一块头像名字太碍眼,想要隐藏掉,所以用 JS 注入

    我尝试了 document.getElementById ,document.querySelector document.getElementByTagName, document.getElementByClassName ,都获取不到那块 div,而且我尝试了下,整个页面用 class 的标签都改不了,但是用 右下角有个点赞的 用 id 的就可以改。 只能找个前端佬帮我看看。

    我目前定位到的是这个位置: #krpanoSWFObject > div:nth-child(1) > div:nth-child(2) > div:nth-child(8) > div:nth-child(1)

    8 replies  •  2024-07-06 17:27:57 +08:00
    Irisxx
    Irisxx
    OP
    Jul 5, 2024
    1
    更新一下,好像是 ul 内部的 class 都定位不到,不知道什么原因。求大佬解惑。
    iOCZS
    iOCZS
    Jul 5, 2024
    2
    这个不是源码里的元素,因此是前端自己生成的,可能你访问 dom 的时机过早,需要加一些延迟
    ajan
    ajan
    Jul 5, 2024
    3
    document.querySelector('#krpanoSWFObject > div:nth-child(1) > div:nth-child(2) > div:nth-child(8)')?.remove()
    okakuyang
    okakuyang
    Jul 5, 2024
    4
    这个应该是 krpano 这个库创建的元素,你要等它创建了才能查询到这些元素并修改。
    ashong
    ashong
    Jul 5, 2024
    5
    MutationObserver
    ajan
    ajan
    Jul 5, 2024❤️1
    6
    用 js 注入 css 到页面,可以不用等页面加载完成、DOM 渲染完成;
    ---------
    var el = document.createElement('style');
    el.setAttribute('type', 'text/css');
    el.innerText = '#krpanoSWFObject > div:nth-child(1) > div:nth-child(2) > div:nth-child(8){display: none !important;}';
    document.head.appendChild(el);
    sannyzeng
    sannyzeng
    Jul 5, 2024 via Android
    7
    6 楼正解
    cz5424
    cz5424
    Jul 6, 2024 via iPhone
    8
    这种油猴比较多解决方案,要等他先加载完
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4919 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 45ms · UTC 02:40 · PVG 10:40 · LAX 18:40 · JFK 21:40
    ♥ Do have faith in what you're doing.