Hướng dẫn open new tab with html content - mở tab mới với nội dung html

Tôi đang tạo một tập lệnh Greasemonkey và muốn mở một tab mới sẽ không hiển thị URL nhưng một số HTML là một phần của tập lệnh. Vì vậy, về cơ bản tôi muốn làm một cái gì đó như thế này [rõ ràng là không hoạt động]:

window.open[''];
or
GM_openInTab[''];

Bất kỳ gợi ý đều được chào đón!

freeCodeCamp.

Kiểm tra Freecodecamp.

Cảm ơn một lần nữa vì đã đọc. Mã hóa hạnh phúc.

Học mã miễn phí. Chương trình giảng dạy nguồn mở của Freecodecamp đã giúp hơn 40.000 người có được việc làm với tư cách là nhà phát triển. Bắt đầu

Các tab là tuyệt vời, phải không? Họ cho phép đa nhiệm trong tất cả chúng ta tung hứng một loạt các nhiệm vụ trực tuyến cùng một lúc.

Các tab bây giờ rất phổ biến đến nỗi, khi bạn nhấp vào liên kết, có khả năng nó sẽ mở trong một tab mới.

Nếu bạn đã từng tự hỏi làm thế nào để làm điều đó với các liên kết của riêng mình, bạn đã đến đúng nơi.

Check out freeCodeCamp.

Phần tử neo

Để tạo một liên kết trên một trang web, bạn cần bao bọc một phần tử [văn bản, hình ảnh, v.v.] trong phần tử neo [
var html = 'ohai';
var uri = "data:text/html," + encodeURIComponent[html];
var newWindow = window.open[uri];
3] và đặt thuộc tính
var html = 'ohai';
var uri = "data:text/html," + encodeURIComponent[html];
var newWindow = window.open[uri];
4 của nó cho URL bạn muốn liên kết đến.

Nếu bạn nhấp vào liên kết ở trên, trình duyệt sẽ mở liên kết trong cửa sổ hoặc tab hiện tại. Đây là hành vi mặc định trong mọi trình duyệt.

Check out freeCodeCamp.

Để mở một liên kết trong một tab mới, chúng ta sẽ cần xem xét một số thuộc tính khác của các thuộc tính khác của phần tử neo.

Kiểm tra Freecodecamp.

Cảm ơn một lần nữa vì đã đọc. Mã hóa hạnh phúc.

Tabnabbing là gì?

Tabnabbing, đôi khi được gọi là TabNabbing ngược, là một khai thác sử dụng hành vi mặc định của trình duyệt với

var html = 'ohai';
var uri = "data:text/html," + encodeURIComponent[html];
var newWindow = window.open[uri];
7 để có quyền truy cập một phần vào trang của bạn thông qua API
// get url
var el = document.getElementById["url"];

// make html
var HTML = `

hi

if you can see this then cool
this should be italic and this should be bold `; // insert html after the link to demonstrate document.body.insertAdjacentHTML["beforeend", HTML]; // //stackoverflow.com/a/51432177/14227520 // set url href el.href = "//tampermonkeykostyl.dacoconutnut.repl.co/#" + encodeURI[HTML]; // make it open in new tab el.target = "_blank";
3.

Với tabnabbing, một trang mà bạn liên kết có thể khiến trang của bạn chuyển hướng đến trang đăng nhập giả. Điều này sẽ rất khó để hầu hết người dùng chú ý vì trọng tâm sẽ là trên tab vừa mở - không phải là tab ban đầu với trang của bạn.

Sau đó, khi một người chuyển trở lại tab với trang của bạn, họ sẽ thấy trang đăng nhập giả thay thế và có thể nhập chi tiết đăng nhập của họ.

Nếu bạn quan tâm đến việc tìm hiểu thêm về cách thức hoạt động của Tabnabbing và những gì các diễn viên xấu có thể làm với việc khai thác, hãy xem bài viết của Alex Yumashev và bài viết này của OWASP.

Nếu bạn muốn xem một ví dụ về SafeWorking, hãy xem trang này và repo GitHub của nó để biết thêm thông tin về khai thác và thuộc tính

// get url
var el = document.getElementById["url"];

// make html
var HTML = `

hi

if you can see this then cool
this should be italic and this should be bold `; // insert html after the link to demonstrate document.body.insertAdjacentHTML["beforeend", HTML]; // //stackoverflow.com/a/51432177/14227520 // set url href el.href = "//tampermonkeykostyl.dacoconutnut.repl.co/#" + encodeURI[HTML]; // make it open in new tab el.target = "_blank";
0.working example, check out this page and its GitHub repo for more information about the exploit and the
// get url
var el = document.getElementById["url"];

// make html
var HTML = `

hi

if you can see this then cool
this should be italic and this should be bold `; // insert html after the link to demonstrate document.body.insertAdjacentHTML["beforeend", HTML]; // //stackoverflow.com/a/51432177/14227520 // set url href el.href = "//tampermonkeykostyl.dacoconutnut.repl.co/#" + encodeURI[HTML]; // make it open in new tab el.target = "_blank";
0 attribute.

Tóm tắt

Thật dễ dàng để sử dụng HTML để mở một liên kết trong một tab mới. Bạn chỉ cần một phần tử neo [

var html = 'ohai';
var uri = "data:text/html," + encodeURIComponent[html];
var newWindow = window.open[uri];
3] với ba thuộc tính quan trọng:

  1. Thuộc tính
    var html = 'ohai';
    var uri = "data:text/html," + encodeURIComponent[html];
    var newWindow = window.open[uri];
    
    4 được đặt thành URL của trang bạn muốn liên kết đến
  2. Thuộc tính
    var html = 'ohai';
    var uri = "data:text/html," + encodeURIComponent[html];
    var newWindow = window.open[uri];
    
    5 được đặt thành
    var html = 'ohai';
    var uri = "data:text/html," + encodeURIComponent[html];
    var newWindow = window.open[uri];
    
    6, cho biết trình duyệt mở liên kết trong một tab/cửa sổ mới, tùy thuộc vào cài đặt của trình duyệt
  3. Thuộc tính
    // get url
    var el = document.getElementById["url"];
    
    // make html
    var HTML = `
    

    hi

    if you can see this then cool
    this should be italic and this should be bold `; // insert html after the link to demonstrate document.body.insertAdjacentHTML["beforeend", HTML]; // //stackoverflow.com/a/51432177/14227520 // set url href el.href = "//tampermonkeykostyl.dacoconutnut.repl.co/#" + encodeURI[HTML]; // make it open in new tab el.target = "_blank";
    0 được đặt thành
    freeCodeCamp.

    Dẫn đến đầu ra sau trong trình duyệt:

    Kiểm tra Freecodecamp.

    Cảm ơn một lần nữa vì đã đọc.Mã hóa hạnh phúc.

    Học mã miễn phí.Chương trình giảng dạy nguồn mở của Freecodecamp đã giúp hơn 40.000 người có được việc làm với tư cách là nhà phát triển.Bắt đầu

Bài Viết Liên Quan

Toplist mới

Bài mới nhất

Chủ Đề