网页正在客户端运行,页面中有div
通过ajax fn()
动态更改内部HTML,但我遇到了jQuery fn()
未运行的问题。
假设这是正在运行的网页
<html> <head>
<script type="text/javascript" src="jquery-1.6.2.min.js"> </script>
<script type="text/javascript" src="jquery-ui.min.1.8.11.js"> </script>
</head> <body>
<div id = "dynamic"> </div>
<input type = "button" id="click" />
<script type="text/javascript">
$("#click").click(function(){
// send request to server via ajax (xmlHttprequest )
// get html contents as responseText
$("#dynamic").html(responseText);
});
</script>
</body> </html>
正如您在上面给出的示例中所看到的,如果客户端点击按钮,请求发送到服务器并获取innerHTML作为responseText,并将其放入dynamic div
。
* responseText作为innerHTML工作:* css
属性已加载并正常工作
<div id="myDiv"> </div>
<style type="text/css">
#myDiv { width: 100%; height:100%; background: blue; }
</style>
innerHTML不起作用: css
如果我使用jQuery加载css文件,则属性不起作用
<div id="myDiv"> </div>
<script type="text/javascript">
$(document).ready(function(){
$("head").append($("<link rel='stylesheet' href='test.css' type='text/css' />"));
});
</script>
并且test.css
在服务器上(css属性在外部文件中定义)
#myDiv { width: 100%; height:100%; background: blue; }
答案 0 :(得分:0)
如果该函数存在于全局空间
window["functionName"]();
如果你已命名,那么
myNameSpace["functionName"]();
答案 1 :(得分:0)
如果您希望动态地向DOM添加样式表,请尝试以下操作:
$.get('test.css', function(responseCSS)
{
$('<style type="text/css"></style>').html(responseCSS).appendTo("head");
});