我陷入两难境地。 - http://jsfiddle.net/o7b3r5pa/4/ (忽略错误文本,它只是破坏页面的事实是问题。请注意div和textarea如何消失,被库吞没)
这就是库应该做的事情:https://jsfiddle.net/3o4y15qz/ (因为它没有被javascript加载,所以看得很好,因为它没有被javascript加载)
概述:
当你使用javascript渲染它时,某个人的愚蠢库不起作用...它必须在javascript运行之前放在页面上。它基本上在我的页面上呈现一个Web表单,以便人们可以填写它并将其提交给系统。
问题:
<div ng-repeat="test in Testers" ng-style="{ 'left': test.Left + 'px' }">
{{test.Content}}
</div>
我需要用以下内容替换上面的内容:
<div ng-repeat="test in Testers" ng-style="{ 'left': test.Left + 'px' }">
<script>//stupid script library</script>
</div>
<div ng-repeat="test in Testers" ng-style="{ 'left': test.Left + 'px' }">
<script>//stupid script library</script>
</div>
<div ng-repeat="test in Testers" ng-style="{ 'left': test.Left + 'px' }">
<script>//stupid script library</script>
</div>
<script>//stupid script library</script>
将由PHP放置,因此无法通过javascript加载。
显然问题是ng-repeat
...我需要它在那里,因为我仍然需要让div可以访问test.Left
命令。我如何解决这个问题?
如果我发现如何做到这一点,它将允许我通过PHP放置内容,因此愚蠢的脚本库将正常工作。
----编辑----
我尝试过以下操作:
...
$scope.Testers = [
{
"Content": "<iframe><html><body><script>alert( "hi" );<\/script></iframe></body></html>"
}
]
...
<div ng-repeat="test in Testers" ng-style="{ 'left': test.Left + 'px' }">
{{test.Content}}
</div>
但这仍然没有显示任何内容。
答案 0 :(得分:0)
你正试图混合两件事。一个好方法是创建一个使用愚蠢库的指令。然后做这样的事情。
<div ng-repeat="test in Testers" ng-style="{ 'left': test.Left + 'px' }">
<stupid-library-directive></stupid-library-directive>
</div>