The Little Guy Posted February 2, 2011 Share Posted February 2, 2011 I have this: HTMLElement.prototype.hide = function(){ this.style.display = 'none'; } It works fine, and I use it like this: var item = document.getElementById('myitem').hide(); I am trying to set up the same thing but instead of a function I want to use a property. HTMLElement.prototype.y = this.offsetTop; which would look like this: var item = document.getElementById('myitem').y; The problem is that "this" is referring to the window. How can I get it to use the object that called it? In this case it would be #myitem. Quote Link to comment https://forums.phpfreaks.com/topic/226409-javascript-properties/ Share on other sites More sharing options...
.josh Posted February 2, 2011 Share Posted February 2, 2011 HTMLElement.prototype.getY = function(){ return this.offsetTop; } var y = document.getElementById('myitem').getY(); Quote Link to comment https://forums.phpfreaks.com/topic/226409-javascript-properties/#findComment-1168647 Share on other sites More sharing options...
.josh Posted February 2, 2011 Share Posted February 2, 2011 anyways...is there a reason you can't just do this? var y = document.getElementById('myitem').offsetTop; Quote Link to comment https://forums.phpfreaks.com/topic/226409-javascript-properties/#findComment-1168668 Share on other sites More sharing options...
The Little Guy Posted February 2, 2011 Author Share Posted February 2, 2011 because I am technically doing it this way: $.item('#myid').x; this part: $.item('#myid') is basically this: document.getElementById('myid'); I am writing an object (as you may have noticed from other posts). I want to make a quick easy way to get an items x/y position. I am not seeing how to implement your method... Quote Link to comment https://forums.phpfreaks.com/topic/226409-javascript-properties/#findComment-1168683 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.