Javascript dapatkan semua tab browser

Setiap kali pengguna mengklik pop-up pada halaman, mereka sebelumnya tidak memberikan izin untuk mengakses, mereka dimintai izin

  • Dan, tab. kueri hanya mengembalikan tab dengan url yang sebelumnya diberikan akses kepada pengguna

  • I did solve this by also asking for the ""-permission, but that makes it seem like my extension does all kinds of things :-) or at least it could do all kinds of things, but really it does absolutely nothing on any page. It's only about the urls and titles of open tabs.

    Mungkin saya mengabaikan sesuatu, tetapi ini tampaknya terlalu membatasi untuk ekstensi "manajemen tab" apa pun dan juga ini menyesatkan bagi pengguna ekstensi semacam itu - menurut saya

    Beri tahu saya, jika ada cara lain untuk membuat tab. kueri berfungsi seperti di Chrome & Firefox

    Salam Hormat,
    Januari

    PS

    Saya menjalankan ini di Safari Versi 14. 0 (15610. 1. 28. 1. 7, 15610)

    Juga, saya memposting ini sebagai umpan balik juga. ID-nya adalah FB8705146
    Saya mencoba mengonversi ekstensi Tab Ahead Chrome Anda menggunakan alat konversi Safari. Peringatan izin yang terjadi saat melakukan browser. tab. query() adalah perilaku yang diharapkan dan akan tetap ada di Safari. Tidak seperti browser lain, Safari mengharuskan pengguna memberikan izin situs untuk mengakses URL tab dan judul pada saat pertama kali digunakan, bukan saat pemasangan ekstensi. Inilah sebabnya mengapa Anda tidak melihat peringatan tentang izin saat mengaktifkan ekstensi web di Safari.

    Saya mengerti mengapa menurut Anda Anda perlu menambahkan , karena itu menunjukkan tombol "Selalu Izinkan di Setiap Situs Web…" . Safari harus memberi pengguna opsi itu ketika hanya izin "tab" yang digunakan, karena ada harapan bahwa pengelola tab seperti milik Anda memerlukan akses ke semua tab. Saya akan menggunakan permintaan umpan balik Anda untuk melacak perubahan pada Safari di area tersebut.

    Anda dapat menggunakan browser. izin. permintaan({asal. [' untuk meningkatkan versi ekstensi Anda nanti untuk mendapatkan tombol "Selalu Izinkan di Setiap Situs Web…". Ini tidak akan memberikan semua izin, hanya kemampuan untuk meminta pengguna mengizinkannya. Pengguna masih perlu mengambil tindakan pada saat penggunaan untuk mengizinkan satu situs, atau semua situs. (Anda juga perlu memasukkan di opsional_permissions di . )

    Terima kasih atas info dan tanggapannya
    Hai Timothy, terima kasih banyak atas balasan Anda yang tepat waktu dan terperinci

    Saya pikir Anda memahami masalah saya, tetapi saya tidak yakin, jika saya mendapatkan jawaban Anda sepenuhnya, izinkan saya memberi Anda beberapa pertanyaan lanjutan sehingga saya dapat memastikan bahwa saya memahami Anda dengan benar

    Anda mengatakan itu

    URL dan judul halaman dianggap sebagai informasi sensitif. Tab panggilan. query() harus meminta izin kepada pengguna ke tab yang diminta (melalui tombol bilah alat berlencana atau terkadang peringatan) jika izin belum diberikan

    Lalu, pertanyaan lanjutan saya adalah "Apa gunanya izin tab?"

    Saya akan memberikan lebih banyak konteks sehingga mudah-mudahan lebih mudah untuk memahami dari mana saya berasal

    Di Chrome dan FireFox (tempat Ekstensi saya sudah berjalan) pengguna hanya dimintai persetujuannya (untuk izin "tab") satu kali pada saat memasang ekstensi. Setelah itu, tidak masalah URL / situs web mana yang saat ini dibuka pengguna di tabnya masing-masing. Pengguna selalu dapat membuka ekstensi Munculan dan menelusuri semua tabnya (mis. e. tab. query dipanggil) tanpa dimintai izin lebih lanjut.

    Nah disitulah saya melihat perbedaannya. Bisakah Anda mengkonfirmasi ini?

    Sekarang Anda mungkin juga mengerti *mengapa* saya menambahkan izin . Safari seharusnya meminta izin tergantung pada URL / situs web yang saat ini terbuka, *seperti yang Anda katakan*, tetapi saya ingin menetapkan perilaku yang sama dengan yang saya miliki di Chrome & FireFox.

    Jadi saya kira pertanyaan ketiga dan terakhir sekarang adalah. Akankah perbedaan perilaku ini tetap ada di Safari?



    Saya mengunggah proyek XCode dan folder "Resources" dari ekstensi pada tiket umpan balik, tetapi semuanya juga open-source
    • Tab . kueri -panggilan ada di sini. https. //github. com/janraasch/tab-ahead/blob/master/app/scripts/popup. kopi#L45

    • Manifes . json dapat ditemukan di. https. //github. com/janraasch/tab-ahead/blob/master/app/manifest. json

    • Dan inilah manifesnya. json apakah saya bermain-main untuk membuatnya berfungsi di Safari tanpa semua izin-munculan. https. //github. com/janraasch/tab-ahead/blob/safari/app/manifest. json



    Jika Anda ingin mengetahui bagaimana perilaku Chrome, Anda dapat mengunduh ekstensi dari https. // chrome. google. com/webstore/detail/tab-ahead/naoajjeoiblmpegfelhkapanmmaaghmi

    Untuk Firefox buka https. //tambahan. mozilla. org/en-US/firefox/addon/tab-ahead-firefox/?utm_source=addons. mozilla. org&utm_medium=referral&utm_content=penelusuran

    Bagaimana cara mendapatkan url dari semua tab dari semua browser yang dibuka menggunakan JavaScript?

    Sebenarnya ada caranya, cukup bookmark semua tab lalu seret bookmark tersebut ke suatu tempat, misalnya ke form html, lalu Anda bisa menggunakan misalnya javascript untuk membacanya dari sana

    Bagaimana cara mendapatkan daftar tab terbuka?

    Ini terlihat seperti panah bawah, dan terletak di pojok kanan atas jendela. Jendela popup Tab Pencarian sekarang akan muncul. Cara alternatif untuk sampai ke sini adalah dengan menggunakan pintasan keyboard. Shift + Command + A di Mac, atau Control + Shift + A di PC .

    Bagaimana cara mendapatkan ID tab browser di JavaScript?

    Solusi 1 . var tabName = document. title; ini akan memberi Anda nama tab (teks yang ditampilkan pada tab).

    Bisakah JavaScript mengakses tab lain?

    Anda dapat mengakses jendela/tab baru jika dibuka dengan JavaScript dan halaman memang berada di domain yang sama . var menang = jendela. buka("/path_ke_halaman"); . g. judul.