我在Joomla中有一个页面,在单击打印按钮元素后打开一个弹出窗口。这是运行“public function render
的脚本 public function render($params = array()) {
$params = $this->app->data->create($params);
// include assets css
$this->app->document->addStylesheet('elements:itemprint/assets/css/itemprint.css');
if ($this->app->request->getBool('print', 0)) {
// Hide respond form from the printing view
$this->app->document->addStyleDeclaration('#comments #respond { display:none; }');
// Hide comments if requested
if (!$params->get('showcomments', true)) {
$this->app->document->addStyleDeclaration('#comments { display:none; }');
}
return '<a class="element-print-button" onclick="window.print(); return false;" href="#"></a>';
/*return '<a class="element-print-button" window.onload="window.print();" href="#"></a>';*/
注意元素打印按钮。目前它设置为点击打印我希望它在加载时打印。我无法将onload函数插入到body标签中,因为此页面是使用$ params = array
动态创建的答案 0 :(得分:0)
这个怎么样:
return '<a class="element-print-button" onclick="window.print(); return false;" href="#"></a><script>window.onload=window.print();</script>';
免责声明:我不知道Joomla是如何工作的,但这只是一个Javascript解决方案。
答案 1 :(得分:0)
我无法将onload函数插入到body标签
中
然后你可以使用<script>
块
window.onload = function() { … }
代替。
但Joomla并没有像f.e.那样整合和推广JS库。 jQuery还是什么呢?那些应该提供执行代码onload或ready的方法,而不必通过HTML属性依赖像oldschool方法那样的事件处理程序......