我已经继承了一些代码,并且我尝试添加一个增强功能,该功能将使用URL打开popup样式iframe。代码的布局方式是html窗口和"内容"中有不同的tab-panes
。选项卡显示#post-body
中的信息(位于内容选项卡中)。在内容选项卡中,其中一条信息是URL。
目前代码如下:
HTML:
<!-- Tab panes -->
<div class="tab-content" style= "height: 100%;">
<div class="tab-pane" id="top-assoc"></div>
<div class="tab-pane active" id="top-rank"> </div>
<div class="tab-pane" id="top-tags"></div>
<div class="tab-pane" id="content-body-tab" style="height: 100%;">
<div id="post-body" style="padding: 15px;"> Select a post to preview </div>
</div>
</div>
JS:
$("#post-body").append($('<div>').addClass("post-view").append(
[$('<p>').append($('<span>').addClass('bold').text("Post: ")),
$('<div>', { "style": "font-size: 20px;"}
).html(postObj.content),
$('<div>', { "style": "padding-top: 10px;"})
.append($('<span>').addClass('bold').text("URL: "))
.append($('<a>', { "href": postObj.url,
"target": "_blank" }).html(postObj.url))),
$('<div>', { "style": "padding-top: 10px;"})
.append($('<p>', { "style": "overflow-wrap: break-word"})
.append($('<span>').addClass('bold').text("Users: "))...morecode
所以我做了改变这一点的是我在html中添加了div
,在javascript中添加了onclick
函数。看起来像
HTML:
<div class="tab-pane" id="content-body-tab" style="height: 100%;">
<div id="post-body" style="padding: 15px;"> Select a post to preview </div>
<div id="post-frame" data-role="popup"><iframe id="framecontent" src="" width="80%" height="500"></iframe></div>
</div>
JS:
$('<div>', { "style" : "padding-top: 10px;"})
.append($('<span>').addClass('bold').text("URL: "))
.append($('<a>', { "href": postObj.url,
"target" : "_blank" }).html(postObj.url)).on("click", function() {
$(#framecontent).attr("src", postObj.url);
}),
我觉得应该有用,但根据Chrome Uncaught SyntaxError: Unexpected token ILLEGAL
$(#framecontent).attr("src", postObj.url);
我不确定为什么这不起作用?任何帮助表示赞赏。
答案 0 :(得分:3)
$(#framecontent).attr("src", postObj.url);
需要
$('#framecontent').attr("src", postObj.url);
如果您不明白原因,请查看http://www.w3schools.com/jquery/jquery_selectors.asp
它也可能是另一回事,但如果没有完整的代码,很难弄清楚是什么。