AngularJS ng样式的问题

时间:2018-07-16 18:38:40

标签: jquery angularjs

ng-style为背景网址值自动添加"

js

$scope.url = 'https://background_image_url.png' in my controller

html

<div ng-style="{'background': 'url('+url+') repeat'">

当我使用innerHTML或JQuery html()函数从获取的视图中获取html

style="background: url(&quot;https://background_image_url.png&quot;);

注意周围的&quot;背景图片网址。

请参见http://jsfiddle.net/ADukg/26199/

有人知道我如何避免在url背景中出现&quot; , 此html确实有效,但在Yahoo邮件中却出现了问题:(

2 个答案:

答案 0 :(得分:2)

由于您将html转换为文本,因此将html实体显示为“ 如果要转换回普通链接,则必须使用replace方法并传递此reg表达式,它将转换回普通文本。

var html = $('#quote_issue_div').html().replace(/&quot;/g, '\\"');

答案 1 :(得分:2)

这不是一个很好的解决方案,但是避免使用ngStyle可以解决此问题。如果您更改:

ng-style="{'background': 'url('+url+')','height':'200px', 'border':'1px solid', 'width':'400px'}"

style="background-image: url({{url}}); height: 200px; border: 1px solid; width: 400px;"

然后它可以按您想要的方式工作。我不是AngularJS开发人员,所以Chellappan的答案可能会更好。

我还玩了一点,意识到这本身并不是AngularJS的问题。如果使用香草JavaScript动态设置背景图片,则会遇到相同的问题。