View Helper - InlineScript¶
Introduction¶
The HTML <script> element is used to either provide inline client-side scripting elements or link to a remote
resource containing client-side scripting code. The InlineScript
helper allows you to manage both. It is
derived from HeadScript, and any method of that helper is available;
however, use the inlineScript()
method in place of headScript()
.
Nota
Use InlineScript for HTML Body Scripts
InlineScript
, should be used when you wish to include scripts inline in the HTML body. Placing scripts
at the end of your document is a good practice for speeding up delivery of your page, particularly when using
3rd party analytics scripts.
Some JS libraries need to be included in the HTML head; use HeadScript for those scripts.
Basic Usage¶
Add to the layout script:
1 2 3 4 5 6 7 8 | <body>
<!-- Content -->
<?php
echo $this->inlineScript()->prependFile($this->basePath('js/vendor/foundation.min.js'))
->prependFile($this->basePath('js/vendor/jquery.js'));
?>
</body>
|
Output:
1 2 3 4 5 6 | <body>
<!-- Content -->
<script type="text/javascript" src="/js/vendor/jquery.js"></script>
<script type="text/javascript" src="/js/vendor/foundation.min.js"></script>
</body>
|
Capturing Scripts¶
Add in your view scripts:
1 2 3 4 5 6 7 | $this->inlineScript()->captureStart();
echo <<<JS
$('select').change(function(){
location.href = $(this).val();
});
JS;
$this->inlineScript()->captureEnd();
|
Output:
1 2 3 4 5 6 7 8 9 10 11 12 13 | <body>
<!-- Content -->
<script type="text/javascript" src="/js/vendor/jquery.js"></script>
<script type="text/javascript" src="/js/vendor/foundation.min.js"></script>
<script type="text/javascript">
//<!--
$('select').change(function(){
location.href = $(this).val();
});
//-->
</script>
</body>
|