Sorry, the grant line it is none. :)

2015-05-08 19:51 GMT+02:00 Méhész György Ákos <[email protected]>:

> Hello again! ;)
>
> The root problem is that this site using load time booster technics (parts
> of the site loads separate) that triggers the scripts to run many times.
> The very first attempt to shrink the pics had that problem as we used
> percentage to shrink, but at times when the picture is more or less fine in
> size but exceeds the 200px limit it will become 80% of its parent element,
> but it was smaller...so it will be pumped up. :)
>
> Now that we know this, you can understand that the modified script that
> was provided is working perfectly, but runs as many times as the site
> finishes to load its parts. (5-8 times or more)
> Each time the script checks the pictures if they are bigger than
> 200px...and yes the shrinked pictures are smaller by 80% than the original
> size but still larger than 200px, so they will be shrinked again and again,
> until they become smaller than 200px or no more script runs are ahead. ;)
>
> This time i could think of 2 solutions:
>
> 1, define the absolute maximum width of a picture that you want to see on
> that page, and shrink those to that max size. Regarding the relative height
> too (set it to auto).
> 2, mark the already shrinked nodes for the script to recognise them.
>
> I prefer the first one because we don't want to interfere other scripts by
> altering the node with custom attributes. ;)
>
>
> // ==UserScript==
> // @name            ModGHacks
> // @namespace       nsModGHacks
> // @description     Modify ghacks.net
> // @include         http://www.ghacks.net/*
> // @version         1.0.0
> // @grant           GM_addStyle
> // @require         http://code.jquery.com/jquery-latest.js
> // ==/UserScript==
>
> document.addEventListener("load",
>
>   function (){
>     var imgNodes = document.getElementsByTagName("img"),
>         imgNode,
>         i = imgNodes.length,
>         imgWidth,
>         maxWidth = 640;    // modify this to your own max size ;)
>
>     for (;i;) {
>       imgNode = imgNodes[--i];
>
>       imgWidth = imgNode.clientWidth;
>       imgHeight = imgNode.clientHeight;
>       if (imgWidth > maxWidth) {
>         imgNode.style.maxWidth = maxWidth + "px";
>         imgNode.style.height = "auto";
>         console.log('Image with client width: %dpx modified to %dpx.',
> imgWidth, maxWidth);
>       }
>     }
>   }, true
> );
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"greasemonkey-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/greasemonkey-users.
For more options, visit https://groups.google.com/d/optout.

Reply via email to