|
1 | 1 | window.onload = function () { |
2 | 2 | const hljsbtn = document.createElement("button"); |
3 | | - hljsbtn.innerHTML = "点击"; |
| 3 | + const img = document.createElement("img"); |
| 4 | + img.src = chrome.runtime.getURL("images/code.svg"); |
| 5 | + img.style.height = "20px"; |
| 6 | + img.style.width = "20px"; |
| 7 | + |
| 8 | + hljsbtn.appendChild(img); |
| 9 | + |
| 10 | + // hljsbtn.innerHTML = "点击"; |
4 | 11 | hljsbtn.type = "button"; |
5 | | - hljsbtn.backgroundColor = "red"; |
6 | | - hljsbtn.style.height = "20px"; |
7 | | - hljsbtn.style.width = "40px"; |
8 | | - // hljsbtn.style.position = 'fixed'; |
9 | | - // hljsbtn.style.top = '100px'; |
10 | | - // hljsbtn.style.left = '10'; |
| 12 | + hljsbtn.style.height = "36px"; |
| 13 | + hljsbtn.style.width = "36px"; |
| 14 | + hljsbtn.style.borderRadius = "36px"; |
| 15 | + hljsbtn.style.border = "none"; |
| 16 | + hljsbtn.style.backgroundColor = "#397354"; |
| 17 | + hljsbtn.style.color = "#fff"; |
| 18 | + hljsbtn.style.cursor = "pointer"; |
| 19 | + hljsbtn.style.position = "fixed"; |
| 20 | + hljsbtn.style.bottom = "60px"; |
| 21 | + hljsbtn.style.right = "30px"; |
| 22 | + hljsbtn.style.zIndex = "9999"; |
| 23 | + hljsbtn.style.display = "flex"; |
| 24 | + hljsbtn.style.justifyContent = "center"; |
| 25 | + hljsbtn.style.alignItems = "center"; |
11 | 26 |
|
12 | 27 | hljsbtn.addEventListener("click", () => { |
| 28 | + console.log("点击了"); |
13 | 29 | const memos = document.getElementsByClassName("richText"); |
14 | 30 | const memos_array = Array.from(memos); |
15 | 31 | console.log(memos_array.length); |
16 | 32 | memos_array.forEach((memo) => { |
17 | | - const memo_p = memo.getElementsByTagName("p"); |
18 | | - const memo_p_array = Array.from(memo_p); |
19 | | - |
20 | | - const newRichText = document.createElement("div"); |
| 33 | + let children = memo.children; |
| 34 | + console.log(children); |
| 35 | + const memo_p_array = Array.from(children); |
21 | 36 | let languageFlag = false; |
22 | | - |
23 | | - let codeArr = []; |
| 37 | + let codeContentArr = []; |
24 | 38 | let languageType = ""; |
25 | 39 | for (let i = 0; i < memo_p_array.length; i++) { |
26 | 40 | if ( |
27 | 41 | memo_p_array[i].innerHTML.startsWith("```") && |
28 | 42 | memo_p_array[i].innerHTML.substring(3) != "" |
29 | 43 | ) { |
| 44 | + languageType = "language-" + memo_p_array[i].innerHTML.substring(3); |
30 | 45 | languageFlag = true; |
31 | | - let language = memo_p_array[i].innerHTML.substring(3); |
32 | | - languageType = "language-" + language; |
| 46 | + memo.removeChild(memo_p_array[i]); |
33 | 47 | continue; |
34 | 48 | } else if ( |
35 | 49 | memo_p_array[i].innerHTML.startsWith("```") && |
36 | 50 | memo_p_array[i].innerHTML.substring(3) === "" |
37 | 51 | ) { |
| 52 | + // memo.removeChild(memo_p_array[i]); |
38 | 53 | languageFlag = false; |
39 | | - |
40 | 54 | let pre = document.createElement("pre"); |
41 | 55 | let code = document.createElement("code"); |
42 | | - code.innerHTML = codeArr.join("\n"); |
| 56 | + code.innerHTML = codeContentArr.join("\n"); |
43 | 57 | code.className = languageType; |
44 | 58 | pre.appendChild(code); |
45 | | - newRichText.appendChild(pre); |
| 59 | + memo_p_array[i].innerHTML = ""; |
| 60 | + memo_p_array[i].appendChild(pre); |
| 61 | + // memo.appendChild(pre); |
46 | 62 | //清空数组 |
47 | | - codeArr = []; |
| 63 | + codeContentArr = []; |
48 | 64 | languageType = ""; |
49 | 65 | continue; |
50 | | - } |
51 | | - |
52 | | - if (languageFlag) { |
53 | | - // code.innerHTML = code.innerHTML + memo_p_array[i].innerHTML; |
54 | | - codeArr.push(memo_p_array[i].innerHTML); |
55 | 66 | } else { |
56 | | - let newP = document.createElement("p"); |
57 | | - newP.innerHTML = memo_p_array[i].innerHTML; |
58 | | - newRichText.appendChild(newP); |
| 67 | + if (languageFlag) { |
| 68 | + codeContentArr.push(memo_p_array[i].innerHTML); |
| 69 | + memo.removeChild(memo_p_array[i]); |
| 70 | + } |
59 | 71 | } |
60 | 72 | } |
61 | | - memo.innerHTML = newRichText.innerHTML; |
62 | 73 | }); |
63 | 74 | hljs.highlightAll(); |
64 | 75 | }); |
65 | | - |
66 | | - // document.body.appendChild(hljsbtn); |
67 | | - |
68 | | - const memos = document.getElementsByClassName("memos")[0]; |
69 | | - memos.appendChild(hljsbtn); |
70 | | - |
71 | | - const send = document.createElement("button"); |
72 | | - send.innerHTML = "发送"; |
73 | | - send.type = "button"; |
74 | | - send.style.height = "20px"; |
75 | | - send.style.width = "40px"; |
76 | | - send.addEventListener("click", () => { |
77 | | - chrome.runtime.sendMessage("get-user-data", (response) => { |
78 | | - // alert(response.username); |
79 | | - // console.error(response.username); |
80 | | - initializeUI(response); |
81 | | - }); |
82 | | - }); |
83 | | - memos.appendChild(send); |
84 | | -// chrome.runtime.onMessage.addListener((message, sender, sendResponse) => { |
85 | | -// if (message === "refresh") { |
86 | | -// sendResponse("123ffff"); |
87 | | -// } |
88 | | -// }); |
| 76 | + document.body.appendChild(hljsbtn); |
89 | 77 | }; |
0 commit comments