2

我在页面上使用Google 代码美化(正常工作),并且我想添加一个函数,该函数在此过程完成后调用。

在文档中,他们描述了以下参数:

callback=js_ident    window.exports["js_ident"] will be called when prettyprinting finishes. If specified multiple times, all are called.

但是,我无法让它为我工作。我显然错过了应该如何定义/导出回调函数的一些东西。

我的标题看起来像这样(当页面加载代码正确美化但警报不显示):

<script type='text/javascript'>function testing(){alert('hello')}}</script>
<script type='text/javascript' src='https://google-code-prettify.googlecode.com/svn/loader/prettify.js?callback=testing'></script>

另外,按照这个例子,我尝试用几种不同的方式修改第一个块(如下所示),但没有改变:

<script type='text/javascript'>window['exports'] = {testing: function(){alert('123')}}</script>
<script type='text/javascript'>window.exports = {testing: {apply: function(){alert('123')}}}</script>

我应该如何定义我的testing函数以便可以正确调用它?

4

2 回答 2

4

似乎该callback参数仅在run_prettify.js脚本上可用,而不是prettify.js您当前使用的脚本。

此外,根据 docs,他们希望您在callback参数中指定的函数在window.exports对象中指定。

例如http://jsbin.com/atukuq/1/

<script type='text/javascript'>
  window.exports = { 
    testing: function () {
      alert('hello');
    }
  }
</script>
<script src="https://google-code-prettify.googlecode.com/svn/loader/run_prettify.js?callback=testing"></script>
于 2013-04-24T13:19:00.173 回答
2
<script type='text/javascript'>
   window.exports = [];
   window.exports["testing"] = function() {
      alert("hello");
   }
</script>
<script type='text/javascript' src='https://google-code-prettify.googlecode.com/svn/loader/run_prettify.js?callback=testing'></script>

更改:run_prettify.js 代替 prettify.js 并根据文档定义函数。

于 2013-04-24T13:24:01.647 回答