本文整理汇总了PHP中JDocumentHtml::getScriptOptions方法的典型用法代码示例。如果您正苦于以下问题:PHP JDocumentHtml::getScriptOptions方法的具体用法?PHP JDocumentHtml::getScriptOptions怎么用?PHP JDocumentHtml::getScriptOptions使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类JDocumentHtml
的用法示例。
在下文中一共展示了JDocumentHtml::getScriptOptions方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: fetchHead
//.........这里部分代码省略.........
foreach ($document->_style as $type => $content) {
$buffer .= $tab . '<style';
if (!is_null($type) && (!$document->isHtml5() || !in_array($type, $defaultCssMimes))) {
$buffer .= ' type="' . $type . '"';
}
$buffer .= '>' . $lnEnd;
// This is for full XHTML support.
if ($document->_mime != 'text/html') {
$buffer .= $tab . $tab . '/*<![CDATA[*/' . $lnEnd;
}
$buffer .= $content . $lnEnd;
// See above note
if ($document->_mime != 'text/html') {
$buffer .= $tab . $tab . '/*]]>*/' . $lnEnd;
}
$buffer .= $tab . '</style>' . $lnEnd;
}
$defaultJsMimes = array('text/javascript', 'application/javascript', 'text/x-javascript', 'application/x-javascript');
// Generate script file links
foreach ($document->_scripts as $strSrc => $strAttr) {
$buffer .= $tab . '<script src="' . $strSrc . '"';
if (!is_null($strAttr['mime']) && (!$document->isHtml5() || !in_array($strAttr['mime'], $defaultJsMimes))) {
$buffer .= ' type="' . $strAttr['mime'] . '"';
}
if ($strAttr['defer']) {
$buffer .= ' defer';
if (!$document->isHtml5()) {
$buffer .= '="defer"';
}
}
if ($strAttr['async']) {
$buffer .= ' async';
if (!$document->isHtml5()) {
$buffer .= '="async"';
}
}
$buffer .= '></script>' . $lnEnd;
}
// Generate scripts options
$scriptOptions = $document->getScriptOptions();
if (!empty($scriptOptions)) {
$buffer .= $tab . '<script type="text/javascript">' . $lnEnd;
// This is for full XHTML support.
if ($document->_mime != 'text/html') {
$buffer .= $tab . $tab . '//<![CDATA[' . $lnEnd;
}
$pretyPrint = JDEBUG && defined('JSON_PRETTY_PRINT') ? JSON_PRETTY_PRINT : false;
$jsonOptions = json_encode($scriptOptions, $pretyPrint);
$jsonOptions = $jsonOptions ? $jsonOptions : '{}';
// TODO: use .extend(Joomla.optionsStorage, options) when it will be safe
$buffer .= $tab . 'var Joomla = Joomla || {};' . $lnEnd;
$buffer .= $tab . 'Joomla.optionsStorage = ' . $jsonOptions . ';' . $lnEnd;
// See above note
if ($document->_mime != 'text/html') {
$buffer .= $tab . $tab . '//]]>' . $lnEnd;
}
$buffer .= $tab . '</script>' . $lnEnd;
}
// Generate script declarations
foreach ($document->_script as $type => $content) {
$buffer .= $tab . '<script';
if (!is_null($type) && (!$document->isHtml5() || !in_array($type, $defaultJsMimes))) {
$buffer .= ' type="' . $type . '"';
}
$buffer .= '>' . $lnEnd;
// This is for full XHTML support.
if ($document->_mime != 'text/html') {
$buffer .= $tab . $tab . '//<![CDATA[' . $lnEnd;
}
$buffer .= $content . $lnEnd;
// See above note
if ($document->_mime != 'text/html') {
$buffer .= $tab . $tab . '//]]>' . $lnEnd;
}
$buffer .= $tab . '</script>' . $lnEnd;
}
// Generate script language declarations.
if (count(JText::script())) {
$buffer .= $tab . '<script';
if (!$document->isHtml5()) {
$buffer .= ' type="text/javascript"';
}
$buffer .= '>' . $lnEnd;
if ($document->_mime != 'text/html') {
$buffer .= $tab . $tab . '//<![CDATA[' . $lnEnd;
}
$buffer .= $tab . $tab . '(function() {' . $lnEnd;
$buffer .= $tab . $tab . $tab . 'Joomla.JText.load(' . json_encode(JText::script()) . ');' . $lnEnd;
$buffer .= $tab . $tab . '})();' . $lnEnd;
if ($document->_mime != 'text/html') {
$buffer .= $tab . $tab . '//]]>' . $lnEnd;
}
$buffer .= $tab . '</script>' . $lnEnd;
}
// Output the custom tags - array_unique makes sure that we don't output the same tags twice
foreach (array_unique($document->_custom) as $custom) {
$buffer .= $tab . $custom . $lnEnd;
}
return $buffer;
}
示例2: fetchHead
/**
* Generates the head HTML and return the results as a string
*
* @param JDocumentHtml $document The document for which the head will be created
*
* @return string The head hTML
*
* @since 3.5
* @deprecated 4.0 Method code will be moved into the render method
*/
public function fetchHead($document)
{
// Convert the tagids to titles
if (isset($document->_metaTags['name']['tags'])) {
$tagsHelper = new JHelperTags();
$document->_metaTags['name']['tags'] = implode(', ', $tagsHelper->getTagNames($document->_metaTags['name']['tags']));
}
if ($document->getScriptOptions()) {
JHtml::_('behavior.core');
}
// Trigger the onBeforeCompileHead event
$app = JFactory::getApplication();
$app->triggerEvent('onBeforeCompileHead');
// Get line endings
$lnEnd = $document->_getLineEnd();
$tab = $document->_getTab();
$tagEnd = ' />';
$buffer = '';
// Generate charset when using HTML5 (should happen first)
if ($document->isHtml5()) {
$buffer .= $tab . '<meta charset="' . $document->getCharset() . '" />' . $lnEnd;
}
// Generate base tag (need to happen early)
$base = $document->getBase();
if (!empty($base)) {
$buffer .= $tab . '<base href="' . $base . '" />' . $lnEnd;
}
// Generate META tags (needs to happen as early as possible in the head)
foreach ($document->_metaTags as $type => $tag) {
foreach ($tag as $name => $content) {
if ($type == 'http-equiv' && !($document->isHtml5() && $name == 'content-type')) {
$buffer .= $tab . '<meta http-equiv="' . $name . '" content="' . htmlspecialchars($content, ENT_COMPAT, 'UTF-8') . '" />' . $lnEnd;
} elseif ($type != 'http-equiv' && !empty($content)) {
$buffer .= $tab . '<meta ' . $type . '="' . $name . '" content="' . htmlspecialchars($content, ENT_COMPAT, 'UTF-8') . '" />' . $lnEnd;
}
}
}
// Don't add empty descriptions
$documentDescription = $document->getDescription();
if ($documentDescription) {
$buffer .= $tab . '<meta name="description" content="' . htmlspecialchars($documentDescription, ENT_COMPAT, 'UTF-8') . '" />' . $lnEnd;
}
// Don't add empty generators
$generator = $document->getGenerator();
if ($generator) {
$buffer .= $tab . '<meta name="generator" content="' . htmlspecialchars($generator, ENT_COMPAT, 'UTF-8') . '" />' . $lnEnd;
}
$buffer .= $tab . '<title>' . htmlspecialchars($document->getTitle(), ENT_COMPAT, 'UTF-8') . '</title>' . $lnEnd;
// Generate link declarations
foreach ($document->_links as $link => $linkAtrr) {
$buffer .= $tab . '<link href="' . $link . '" ' . $linkAtrr['relType'] . '="' . $linkAtrr['relation'] . '"';
if (is_array($linkAtrr['attribs'])) {
if ($temp = ArrayHelper::toString($linkAtrr['attribs'])) {
$buffer .= ' ' . $temp;
}
}
$buffer .= ' />' . $lnEnd;
}
$defaultCssMimes = array('text/css');
// Generate stylesheet links
foreach ($document->_styleSheets as $strSrc => $strAttr) {
$buffer .= $tab . '<link href="' . $strSrc . '" rel="stylesheet"';
if (!is_null($strAttr['mime']) && (!$document->isHtml5() || !in_array($strAttr['mime'], $defaultCssMimes))) {
$buffer .= ' type="' . $strAttr['mime'] . '"';
}
if (!is_null($strAttr['media'])) {
$buffer .= ' media="' . $strAttr['media'] . '"';
}
if (is_array($strAttr['attribs'])) {
if ($temp = ArrayHelper::toString($strAttr['attribs'])) {
$buffer .= ' ' . $temp;
}
}
$buffer .= $tagEnd . $lnEnd;
}
// Generate stylesheet declarations
foreach ($document->_style as $type => $content) {
$buffer .= $tab . '<style';
if (!is_null($type) && (!$document->isHtml5() || !in_array($type, $defaultCssMimes))) {
$buffer .= ' type="' . $type . '"';
}
$buffer .= '>' . $lnEnd;
// This is for full XHTML support.
if ($document->_mime != 'text/html') {
$buffer .= $tab . $tab . '/*<![CDATA[*/' . $lnEnd;
}
$buffer .= $content . $lnEnd;
// See above note
if ($document->_mime != 'text/html') {
$buffer .= $tab . $tab . '/*]]>*/' . $lnEnd;
//.........这里部分代码省略.........