想了解AngularJS–在前端/浏览器中突出显示现有pdf文件的文本的新动态吗?本文将为您提供详细的信息,我们还将为您解答关于angularpdf预览的相关问题,此外,我们还将为您介绍关于Angul
想了解AngularJS – 在前端/浏览器中突出显示现有pdf文件的文本的新动态吗?本文将为您提供详细的信息,我们还将为您解答关于angular pdf预览的相关问题,此外,我们还将为您介绍关于Angular JS-值更改时突出显示dom、angularjs – Angular Bootstrap DateTimePicker – 在嵌入式日历上突出显示今日日期、angularjs – Angular JS:当对象引用另一个对象时,angular.copy会使浏览器崩溃、angularjs – Angular JS:检测ng-bind-html是否完成加载然后突出显示代码语法的新知识。
本文目录一览:- AngularJS – 在前端/浏览器中突出显示现有pdf文件的文本(angular pdf预览)
- Angular JS-值更改时突出显示dom
- angularjs – Angular Bootstrap DateTimePicker – 在嵌入式日历上突出显示今日日期
- angularjs – Angular JS:当对象引用另一个对象时,angular.copy会使浏览器崩溃
- angularjs – Angular JS:检测ng-bind-html是否完成加载然后突出显示代码语法
AngularJS – 在前端/浏览器中突出显示现有pdf文件的文本(angular pdf预览)
PDF creation
使用此库,可以创建不同样式的pdf文档.
我的问题是,是否有可能使用AngularJS标记现有pdf文件的文本(并且可能添加指向此标记文本的链接)?
或者有任何解决方法吗?
解决方法
无论如何,首先要到达正确的页面 – 您可以使用超链接中的片段标识符通过页面参数链接到PDF中的特定页面.例如
<a href="file.pdf#page=1">page 1</a> <a href="file.pdf#page=2">page 2</a>
如果要通过超链接突出显示页面的特定部分,可以使用突出显示参数,请注意您还必须将页面设置为使用突出显示参数.例如
<a href="file.pdf#page=1&highlight=10,10,50,50">page 1 - highlight</a>
矩形值是坐标系中的整数,其中0,0表示左上角,值以lt,rt,top,btm的顺序给出.
也可以通过nameddest参数打开PDF文件到“命名目的地”,即文档中的命名部分.例如
<a href="file.pdf#nameddest=mysection">my section</a>
这很好,因为插入,删除页面无关紧要,因为该部分将始终正确链接.
你可以阅读约Named Destinations here和various Parameters for Opening PDF Files
Angular JS-值更改时突出显示dom
这里有角的noobie。我想知道当范围中的值以某种方式更改时更改dom的最佳方法是什么。我读到将dom操纵逻辑放入控制器中并不是很好,这就是指令的工作。
这是一个小矮人
http://plnkr.co/edit/xWk5UBwifbCF2raVvw81?p=preview
基本上,当通过单击上面的plunkr中的“加载数据”按钮更改数据时,我希望其值更改为的单元格自动突出显示。我无法让它为我的一生工作。
有什么帮助吗?
答案1
小编典典我认为最好是观察每个 荧光笔 的具体价值,而不是观察整个收藏夹。例如:
<td highlighter="person.firstName">{{ person.firstName }}</td>
这样,highlighter
-directive可能非常简单,例如:
app.directive(''highlighter'', [''$timeout'', function($timeout) { return { restrict: ''A'', scope: { model: ''=highlighter'' }, link: function(scope, element) { scope.$watch(''model'', function (nv, ov) { if (nv !== ov) { // apply class element.addClass(''highlight''); // auto remove after some delay $timeout(function () { element.removeClass(''highlight''); }, 1000); } }); } };}]);
但是,要使此工作有效,您必须告诉Angle数据实际上已更改。当前,people
按对象身份的角度轨迹不是这种情况。覆盖它的那一刻,angular将删除所有关联的dom元素。为此,请使用:
ng-repeat="person in people track by $index"
这将告诉angular将数组的索引视为身份。
演示:http://jsbin.com/vutevifadi/1/
angularjs – Angular Bootstrap DateTimePicker – 在嵌入式日历上突出显示今日日期
我正在使用来自以下网址的angular-bootstrap-datetimepicker库:
Link to library
我目前正在页面上嵌入日历.
我正在使用angular.js,moment.js,grunt和bower.加载日历绝对没有问题,甚至可以选择日期并显示所选日期.
以下是示例代码:
<div> Selected Date: {{ data.embeddedDate | date:'yyyy-MMM-dd' }} <datetimepicker data-ng-model="data.embeddedDate" data-datetimepicker-config="{ startView:'day',minView:'day'}" /> </div>
我想在datetimepicker在页面上显示时自动突出显示今天的日期.
如您所见,在配置选项中,我可以设置默认视图和最小视图.
注意:我试图模仿Plunkr中的工作代码(到现在为止),但它没有显示日历.我也添加了所有库.无论如何,这只是为了想法.如果我能让Plunkr工作,我会再次更新.
这是Plunkr的链接.
任何建议(关于默认今天突出显示日期)将不胜感激.
解决方法
$scope.data = { embeddedDate: new Date() };
Working Plunkr
angularjs – Angular JS:当对象引用另一个对象时,angular.copy会使浏览器崩溃
var a = {}; var b = {}; a.ref = b; b.ref = a; angular.copy(a);
当angular.copy触发时,浏览器会锁定.我假设这是因为复制功能正在进行深层复制,当它开始复制b的引用时,它进入b然后想要复制它的引用,从而创建一个圆形副本,这将永远不会结束.
这个假设是对的吗?如果是这样,有没有办法避免这种情况?我假设答案将涉及改变数据的外观,但我很想听到别人的想法.
https://gist.github.com/NV/1396086
angularjs – Angular JS:检测ng-bind-html是否完成加载然后突出显示代码语法
<p ng-bind-html="myHTML"></p> app.controller('customersCtrl',function($scope,$http,$stateParams) { console.log($stateParams.id); $http.get("api link"+$stateParams.id) .then(function(response) { $scope.myHTML = response.data.content; // this will highlight the code Syntax $('pre code').each(function(i,block) { hljs.highlightBlock(block); }); }); });
当屏幕上显示数据时,我想运行
$('pre code').each(function(i,block) { hljs.highlightBlock(block); });
用于突出显示数据中的代码语法但不突出显示. (我使用@L_301_0@突出显示代码语法)
如果我在1秒后延迟加载突出显示代码,它会起作用,但我认为这不是一个好的解决方案
setTimeout(function () { $('pre code').each(function(i,block) { hljs.highlightBlock(block); }); },1000);
我想也许在ng-bind-html完成之前运行的高亮代码.
===
UPDATE
我正在使用$timeout,延迟时间为0,因为有人推荐.但是,有时当网络速度较慢且页面加载速度较慢时,代码将不会突出显示.
$scope.myHTML = response.data.content; $timeout(function() { $('pre code').each(function(i,block) { hljs.highlightBlock(block); }); },0);
解决方法
模板:
<div ng-model="myHTML" highlight></div>
指示:
.directive('highlight',[ function () { return { replace: false,scope: { 'ngModel': '=' },link: function (scope,element) { element.html(scope.ngModel); var items = element[0].querySelectorAll('code,pre'); angular.forEach(items,function (item) { hljs.highlightBlock(item); }); } }; } ]);
示例:http://plnkr.co/edit/ZbcNgfl6xL2QDDqL9cKc?p=preview
关于AngularJS – 在前端/浏览器中突出显示现有pdf文件的文本和angular pdf预览的介绍已经告一段落,感谢您的耐心阅读,如果想了解更多关于Angular JS-值更改时突出显示dom、angularjs – Angular Bootstrap DateTimePicker – 在嵌入式日历上突出显示今日日期、angularjs – Angular JS:当对象引用另一个对象时,angular.copy会使浏览器崩溃、angularjs – Angular JS:检测ng-bind-html是否完成加载然后突出显示代码语法的相关信息,请在本站寻找。
本文标签: