I\'m making a small chrome extension and for it I need to grab a div from the DOM to manipulate. I get the DOM but I\'m having trouble grabbing the required d         
        
this is the permenent solution check it it will work forever
var getElementsByAttribute = function (attr, value) {
var match = [];
var elements = document.getElementsByTagName("*");
for (var ii = 0, ln = elements.length; ii < ln; ii++) {
if (elements[ii].hasAttribute(attr)) {
  /* If a value was passed, make sure it matches the element's */
  if (value) {
    if (elements[ii].getAttribute(attr) === value) {
      match.push(elements[ii]);
    }
    } else {
    match.push(elements[ii]);
  }
}
 }
  return match;
};
(function () {
  var baz = getElementsByAttribute('data-foo', 'bar');
  for (var xx = 0, ln = baz.length; xx < ln; xx++) {
    baz[xx].innerHTML = 'These *are* the droids we are looking for!';
 }
})();
Probably you're trying to get the Element before it's even loaded on the page.
If so, you can wrap your code into the DOMContentLoaded event:
document.addEventListener('DOMContentLoaded', function() {
  console.log(document.getElementById(':ik').textContent);
});
But if you really want to get the element by its aria label, you can do that:
document.querySelector('div[aria-label="Message Body"]');
But this way is much less performatic, and you'll need to do exactly what I've mentioned above too.
querySelector or querySelectorAll with an attribute selector should do it:
// The first element that matches (or null if none do):
var element = document.querySelector('[aria-label="Message Body"]');
// A list of matching elements (empty if none do):
var list = document.querySelectorAll('[aria-label="Message Body"]');
Or if that ID is stable, simply:
var element = document.getElementById(":ik");
(Note that the d is lower case; you have it in upper case in your example.)
Either way, make sure your code doesn't run until the page is loaded, by including this in your manifest:
"run_at": "document_end"
(A little) more in this answer, which references this Google documentation.