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().
Note
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.
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>
|
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>
|
The source code of this file is hosted on GitHub. Everyone can update and fix errors in this document with few clicks - no downloads needed.