Remove hasTip javascript code from Joomla

2019-04-29 05:19发布

问题:

Joomla 2.5 adds this code:

 window.addEvent('domready', function() {
            $$('.hasTip').each(function(el) {
                var title = el.get('title');
                if (title) {
                    var parts = title.split('::', 2);
                    el.store('tip:title', parts[0]);
                    el.store('tip:text', parts[1]);
                }
            });
            var JTooltips = new Tips($$('.hasTip'), { maxTitleChars: 50, fixed: false});
        });

Now - I know I can edit the html behavior file:

libraries/joomla/html/html/behavior.php to comment it out - but this isn't the best solution.

Have tried but neither work: 1. http://flexicontent.org/forum/index.php?f=23&t=4909&rb_v=viewtopic 2. http://www.jsnippets.net/snippets/php/remove-call-to-jtooltips

回答1:

this is the Line you have to comment out:

 var JTooltips = new Tips($$('.hasTip'), { maxTitleChars: 50....

Joomla 2.5 /libraries/joomla/html/*/behavior.php Line xxx comment it out

Joomla 3.x /libraries/cms/html/behavior.php Line 287 comment it out



回答2:

This is not the exactly what you need.But if you just want to hide the tooltip, you can set the display property to none-

.tip-wrap {
display: none !important;
}


回答3:

$doc->_script = preg_replace('window\.addEvent\(\'domready\',\s*function\(\)\s*{\s*\$\$\(\'.hasTip\'\).each\(function\(el\)\s*{\s*var\s*title\s*=\s*el.get\(\'title\'\);\s*if\s*\(title\)\s*{\s*var\s*parts\s*=\s*title.split\(\'::\',\s*2\);\s*el.store\(\'tip:title\',\s*parts\[0\]\);\s*el.store\(\'tip:text\',\s*parts\[1\]\);\s*}\s*}\);\s*var\s*JTooltips\s*=\s*new\s*Tips\(\$\$\(\'.hasTip\'\),\s*{\s*maxTitleChars:\s*50,\s*fixed:\s*false}\);\s*}\);', '', $doc->_script);


回答4:

If you use a template only approach to removing javascript - some components still force the addition of code.

So - far the only reliable solution I have found is utilizing a plugin to block js - JSS - CSS control: http://extensions.joomla.org/extensions/extension/core-enhancements/performance/js-css-control