Chcę usunąć JCaption z pliku head, jquery i jcaption, który dezaktywowałem następującymi metodami:
unset($doc->_scripts[JURI::root(true) . '/media/jui/js/jquery.min.js']);
unset($doc->_scripts[JURI::root(true) . '/media/jui/js/jquery-noconflict.js']);
unset($doc->_scripts[JURI::root(true) . '/media/jui/js/jquery-migrate.min.js']);
unset($doc->_scripts[JURI::root(true) . '/media/system/js/caption.js']);
Aby usunąć jcaption z poprzednich wersji, w których potrzebne są mootools:
$this->_script = preg_replace('%window\.addEvent\(\'load\',\s*function\(\)\s*{\s*new\s*JCaption\(\'img.caption\'\);\s*}\);\s*%', '', $this->_script);
Próbowałem też usunąć go z jquery, ale nie mam doświadczenia z preg_replace () , co zrobić, aby usunąć JCatpion z głowy?
Mój kod:
$this->_script = preg_replace('%jQuery\(window\)\.on(\'load\',\s*function\(\)\s*{\s*new\s*JCaption\(\'img.caption\');\s*}\);\s*%', '', $this->_script);
Spróbuj tego:
źródło
Spróbuj tego:
źródło
Jeśli chcesz użyć wtyczki, aby rozbroić wstrzyknięty tag skryptu, poniższe informacje mogą być przydatne.
źródło
strstr()
jest mniej wydajny niżstrpos()
podczas sprawdzania istnienia podłańcucha w łańcuchu, to zadanie nie musi wyszukiwać podłańcucha -$key
jest to pełne dopasowanie łańcucha.