我正在为我的 Android 应用程序使用 Ionic 框架。
在我的索引上,我有一个 SVG 文本沿路径,单击按钮时将更新为新文本。 在 ionic 服务器上它可以正常工作,但是当我上传到模拟器时,文本根本不再更新。
这是我的代码:
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" id="svg" width="240px" height="63px" viewBox="-36.745 72.133 245.331 23.568">
<defs>
<path id="MyPath" d="M-36.745,89.659c0,0,17.786,8.625,51.934,0.671c0,0,97.811-22.88,152.395-14.463c0,0,20.615,5.33,40.871,15"/>
</defs>
<text>
<textPath class="svgText" xlink:href="#MyPath">
SVG TEXT THAT NEED UPDATE
</textPath>
</text>
</svg>
==========
<button id="cardApply" ng-click="updateText()">Update</button>
==========
updateText = function($title){
var svgNewTitle = $title;
$('.svgText').html(svgNewTitle);
};
请忽略我没有使用 Angular“好东西”这一事实,我是它的“方式”的新手,无法使其正常工作。 Jquery 是让它工作的唯一方法。
SVG 文本不会在 Android 浏览器上更新。
最佳答案
你想把它写成
$('.svgText')[0].textContent = svgNewTitle;
这比尝试使用 .html() 函数更便携。 [0] 将 jQuery 对象转换为原始 DOM 对象。
关于javascript - SVG 文本不会在移动浏览器上更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40006911/