我遇到了这种情况:我需要使用 ng-bind-html 将一段 jQuery 代码加载到span元素中。此元素仅在选择选项卡时显示,因此跨度正在执行ng-show="activetab===2"
因此,我将 jQuery 放在一个名为content的变量中,并使用ng-bind-html="content"如果我只是将该变量设置为一些简单的词,例如“Jonny play football”,那很好,但如果我将其更改为一大块 javascript,它只在页面加载时显示,甚至在activetab设置为2之前。
我也会在下面粘贴 Javascript。这是一个名为 Flexpaper 的插件,可以显示 PDF。
<div id="documentViewer" class="flexpaper_viewer" style="position:absolute;left:10px;top:10px;width:800px;height:500px"> </div>
<script type="text/javascript">
function getDocumentUrl(document){
return "php/services/view.php?doc={doc}&format={format}&page={page}".replace("{doc}",document);
}
var startDocument = "Paper";
jQuery.get((!window.isTouchScreen)?'UI_flexpaper_desktop_flat.html':'UI_flexpaper_mobile.html',
function(toolbarData) {
jQuery('#documentViewer').FlexPaperViewer(
{ config : {
SWFFile : 'docs/Paper.pdf.swf',
IMGFiles : 'docs/Paper.pdf_{page}.png',
JSONFile : 'docs/Paper.js',
PDFFile : 'example.pdf',
Scale : 0.6,
ZoomTransition : 'easeOut',
ZoomTime : 0.5,
ZoomInterval : 0.2,
FitPageOnLoad : true,
FitWidthOnLoad : false,
FullScreenAsMaxWindow : false,
ProgressiveLoading : false,
MinZoomSize : 0.2,
MaxZoomSize : 5,
SearchMatchAll : false,
Toolbar : toolbarData,
BottomToolbar : 'UI_flexpaper_annotations.html',
InitViewMode : 'Portrait',
RenderingOrder : 'html5,flash',
StartAtPage : '',
ViewModeToolsVisible : true,
ZoomToolsVisible : true,
NavToolsVisible : true,
CursorToolsVisible : true,
SearchToolsVisible : true,
UserCollaboration : true,
CurrentUser : 'Test user',
WMode : 'window',
localeChain : 'en_US'
}}
);
});