• Home
  • News
  • Software
  • Knowledge
  • MMO
  • Tips
  • Security
  • Network
  • Office
AnonyViet - English Version
  • Home
  • News
  • Software
  • Knowledge
  • MMO
  • Tips
  • Security
  • Network
  • Office
No Result
View All Result
  • Home
  • News
  • Software
  • Knowledge
  • MMO
  • Tips
  • Security
  • Network
  • Office
No Result
View All Result
AnonyViet - English Version
No Result
View All Result

Instructions for creating Chrome Extensions yourself with Scratch

AnonyViet by AnonyViet
January 30, 2023
in Tips
0

Finally, the file “form_style_5.css” content will be as below. This code is simply inspired by the original page design to use for the extension.

.form-style-5{

 max-width: 500px;

 padding: 10px 20px;

 background: #f4f7f8;

 margin: 10px auto;

 padding: 20px;

 background: #f4f7f8;

 border-radius: 8px;

 font-family: Georgia, "Times New Roman", Times, serif;

}

.form-style-5 fieldset{

 border: none;

}

.form-style-5 legend {

 font-size: 1.4em;

 margin-bottom: 10px;

}

.form-style-5 label {

 display: block;

 margin-bottom: 8px;

}

.form-style-5 input[type="text"],

.form-style-5 input[type="date"],

.form-style-5 input[type="datetime"],

.form-style-5 input[type="email"],

.form-style-5 input[type="number"],

.form-style-5 input[type="search"],

.form-style-5 input[type="time"],

.form-style-5 input[type="url"],

.form-style-5 textarea,

.form-style-5 select {

 font-family: Georgia, "Times New Roman", Times, serif;

 background: rgba(255,255,255,.1);

 border: none;

 border-radius: 4px;

 font-size: 16px;

 margin: 0;

 outline: 0;

 padding: 7px;

 width: 100%;

 box-sizing: border-box;

 -webkit-box-sizing: border-box;

 -moz-box-sizing: border-box;

 background-color: #e8eeef;

 color:#8a97a0;

 -webkit-box-shadow: 0 1px 0 rgba(0,0,0,0.03) inset;

 box-shadow: 0 1px 0 rgba(0,0,0,0.03) inset;

 margin-bottom: 30px;

}

.form-style-5 input[type="text"]:focus,

.form-style-5 input[type="date"]:focus,

.form-style-5 input[type="datetime"]:focus,

.form-style-5 input[type="email"]:focus,

.form-style-5 input[type="number"]:focus,

.form-style-5 input[type="search"]:focus,

.form-style-5 input[type="time"]:focus,

.form-style-5 input[type="url"]:focus,

.form-style-5 textarea:focus,

.form-style-5 select:focus{

 background: #d2d9dd;

}

.form-style-5 select{

 -webkit-appearance: menulist-button;

 height:35px;

}

.form-style-5 .number {

 background: #1abc9c;

 color: #fff;

 height: 30px;

 width: 30px;

 display: inline-block;

 font-size: 0.8em;

 margin-right: 4px;

 line-height: 30px;

 text-align: center;

 text-shadow: 0 1px 0 rgba(255,255,255,0.2);

 border-radius: 15px 15px 15px 0px;

}

.form-style-5 input[type="submit"],

.form-style-5 input[type="button"]

{

 position: relative;

 display: block;

 padding: 19px 39px 18px 39px;

 color: #FFF;

 margin: 0 auto;

 background: #1abc9c;

 font-size: 18px;

 text-align: center;

 font-style: normal;

 width: 100%;

 border: 1px solid #16a085;

 border-width: 1px 1px 3px;

 margin-bottom: 10px;

}

.form-style-5 input[type="submit"]:hover,

.form-style-5 input[type="button"]:hover

{

 background: #109177;

}

After completing the extension’s interface, our next job is to write the logic for the extension. Extensions do two things: add to-dos and display them. So we need to code the extras and display them on the extension.

In the code below, I will use two functions sync.get() and sync.set()are functions of “chrome.storage“. Jaw sync.set() save to-dos in memory and sync.get() used to retrieve and display to-dos. I have a commnet on each feature of the code for your convenience.

function loadItems() {
 /* First get() the data from the storage */
 chrome.storage.sync.get(['todo'], function(result) {
  var todo = []

  if (result && result.todo && result.todo.trim() !== '') {
   /* Parse and get the array as it is saved as a string */
   todo = JSON.parse(result.todo)
  }

  console.log('todo.length=" + todo.length)

  for (var i = 0; i < todo.length; i++) {
   item = todo[i]

   if (item && item.trim() !== "') {
    /* Append the items in the #list for showing them */
    var list = document.getElementById('list')
    var entry = document.createElement('li')
    var text = document.createTextNode(item)

    entry.appendChild(text)
    list.appendChild(entry)
   }
  }
 })
}

/* Load the to-do items upon popup load */
document.addEventListener('DOMContentLoaded', function(){
 console.log('Inside doc.loaded()')

 loadItems()
})

/* Save the to-do item upon button click */
document.getElementById('btn').addEventListener('click', function (ev) {
 console.log('Inside btn.click()')

 text = document.getElementById('txt').value

 if (text && text.trim() !== '') {

  /* First get() old data as calling set() will replace it */
  chrome.storage.sync.get(['todo'], function(result) {
   var todo = []

   if (result && result.todo && result.todo.trim() !== '') {
    /* Parse and get the array as it is saved as a string */
    todo = JSON.parse(result.todo)
   }

   todo.push(text)

   chrome.storage.sync.set({'todo': JSON.stringify(todo)}, function() {
    /* Data is saved now */

    var list = document.getElementById('list')

    while (list.firstChild) {
     list.removeChild(list.firstChild)
    }

    loadItems()
   })
  })
 }
})

Step 3: Demo extension

After you’ve finished writing your extension, you need to check if it’s working properly by adding the extension to Chrome. First, you have to enable developer mode in Chrome: click the . button Options > More tools > Extensionsthen turn on “Developer mode”.

Demo extension

Next click the “Load unpacked” button. If you edit the code, Chrome will automatically reload the extension for you, a very useful “hot reload” feature.

Load unpacked

Now, you can use your self-written extension to record your to-dos on Chrome.

Instructions for creating Chrome Extensions yourself with Scratch

Post Extensions to Chrome Store

While publishing the extension to the Chrome Web Store online is fairly easy, the process is a bit complicated. In short, you have to create a developer account, package your extension, and then ship it along with the other components of the extension (like name, icon, screenshot, etc.); as listed in this paragraph.

Conclusion

As mentioned at the beginning of the article, this is not a detailed article that guides you to make an extension. So, if you want to go in the direction of extensions, here are some pretty good sources that you can refer to:

  1. All abilities, components, and features of extensions.
  2. Sample extensions of the Google Chrome development team.

You can also develop more features of the extension just done like:

  1. Added option to delete to-dos.
  2. To-do notification feature.

So, if you’re serious about this path, I wish you luck.

Tags: ChromecreatingExtensionsInstructionsScratch
Previous Post

Guide to taking transgender photos with FaceApp

Next Post

SSH – A complete set of 3 computer intrusion tools

AnonyViet

AnonyViet

Related Posts

How to create a virtual Pet, a virtual character running around on the Desktop to relax
Tips

How to create a virtual Pet, a virtual character running around on the Desktop to relax

October 15, 2026
15 cách tăng tốc Windows 10 nhanh như gió
Tips

15 cách tăng tốc Windows 10 nhanh như gió

October 14, 2026
How to create Guest mode Shortcuts for Chrome and Edge
Tips

How to create Guest mode Shortcuts for Chrome and Edge

October 13, 2026
Test what breed of dog you are through 10 multiple choice questions
Tips

Test what breed of dog you are through 10 multiple choice questions

October 13, 2026
Fliqlo – Create digital clock screens on Windows and phones
Tips

Fliqlo – Create digital clock screens on Windows and phones

October 12, 2026
SynthID Detector: Genuine AI checking tool from Google
Tips

SynthID Detector: Genuine AI checking tool from Google

October 11, 2026
Next Post
SSH – A complete set of 3 computer intrusion tools

SSH - A complete set of 3 computer intrusion tools

0 0 votes
Article Rating
Subscribe
Login
Notify of
guest

guest

0 Comments
Oldest
Newest Most Voted

Recent News

Instructions for receiving pension through VNeID without going to the ward

Instructions for receiving pension through VNeID without going to the ward

October 16, 2026
MBTI, Big Five, DISC or Holland: which personality test should you choose?

MBTI, Big Five, DISC or Holland: which personality test should you choose?

October 15, 2026
How to create a virtual Pet, a virtual character running around on the Desktop to relax

How to create a virtual Pet, a virtual character running around on the Desktop to relax

October 15, 2026
Record first, choose focus later: how to use 4K 60 fps Cinema mode on iPhone 18 Pro

Record first, choose focus later: how to use 4K 60 fps Cinema mode on iPhone 18 Pro

October 15, 2026
Instructions for receiving pension through VNeID without going to the ward

Instructions for receiving pension through VNeID without going to the ward

October 16, 2026
MBTI, Big Five, DISC or Holland: which personality test should you choose?

MBTI, Big Five, DISC or Holland: which personality test should you choose?

October 15, 2026
How to create a virtual Pet, a virtual character running around on the Desktop to relax

How to create a virtual Pet, a virtual character running around on the Desktop to relax

October 15, 2026
AnonyViet - English Version

AnonyViet

AnonyViet is a website share knowledge that you have never learned in school!

We are ready to welcome your comments, as well as your articles sent to AnonyViet.

Follow Us

Contact:

Email: anonyviet.com[@]gmail.com

Main Website: https://anonyviet.com

Recent News

Instructions for receiving pension through VNeID without going to the ward

Instructions for receiving pension through VNeID without going to the ward

October 16, 2026
MBTI, Big Five, DISC or Holland: which personality test should you choose?

MBTI, Big Five, DISC or Holland: which personality test should you choose?

October 15, 2026
  • Home
  • Home 2
  • Home 3
  • Home 4
  • Home 5
  • Home 6
  • Next Dest Page
  • Sample Page

say88 tỷ lệ kèo nhà cái kèo nhà cái 5 febet

No Result
View All Result
  • Home
  • News
  • Software
  • Knowledge
  • MMO
  • Tips
  • Security
  • Network
  • Office

say88 tỷ lệ kèo nhà cái kèo nhà cái 5 febet

wpDiscuz
0
0
Would love your thoughts, please comment.x
()
x
| Reply