使用javascript函数代替变量
这里我有一个创建侧栏的代码:使用javascript函数代替变量,javascript,jquery,html,function,variables,Javascript,Jquery,Html,Function,Variables,这里我有一个创建侧栏的代码: var side_bar_html = "<a href='javascript:google.maps.event.trigger(gmarkers[" + parseInt(gmarkers.length - 1) + "],\"click\");'>" + place.name + "</a><br>" + '<div class="raty" />' + "</br>"; $(side_bar_h
var side_bar_html = "<a href='javascript:google.maps.event.trigger(gmarkers[" + parseInt(gmarkers.length - 1) + "],\"click\");'>" + place.name + "</a><br>" + '<div class="raty" />' + "</br>";
$(side_bar_html).appendTo('#side_bar').filter('.raty').raty({
score : place.rating,
path : 'http://wbotelhos.com/raty/lib/img'
})
var-side\u-bar\u-html=“
”+“”+””;
$(side_bar_html).appendTo('#side_bar').filter('.raty').raty({
分数:place.rating,
路径:'http://wbotelhos.com/raty/lib/img'
})
如何从这段代码创建一个函数来创建一个带有函数的边栏
比如说:
function Create_a_sidebar_and_put_it_into_ID#sidebar () {
//for every marker to return html string
return "<div class='element'>"+place.name+"</br>"+place.rating+"</div>" + etc...
函数创建一个侧栏并将其放入侧栏(){
//为每个标记返回html字符串
返回“+place.name+”“+place.rating+”+等。。。
因为我在创建html时遇到了问题,我不知道在哪里添加什么,我也无法控制它
有可能吗?如果我正确理解了你的问题,你是在问如何使用你的第一个代码块来为某个地方创建评级,并对其进行重构,这样你就可以随意为某个地方创建侧栏。这就是我将如何回答这个问题的方法 正如@Sime Vidas所提到的,您可以从创建边栏本身的代码开始,并使其成为下面这样的函数。我对该函数进行了一些修改,将javascript从
href
属性中去掉(这通常被认为是一种不好的做法),并将html字符串传递到$.fn.init
(我发现使用DOM方法创建元素会严重降低性能)。在a
元素之后也不需要
,因为默认情况下div
是块元素
function createSidebar(place) {
var $sidebarLink = $(document.createElement('a'));
var $raty = $(document.createElement('div'));
$sidebarLink.attr('href', '#').text(place.name).click(function(evt) {
evt.stopPropagation();
google.maps.events.trigger(gmarkers[parseInt(gmarkers.length - 1, 10)], 'click');
});
$raty.addClass('raty').raty({
score: place.rating,
path: 'http://wbotelhos.com/raty/lib/img'
});
return $([$sidebarLink, $raty]);
}
现在你可以做像这样的事情
var $sidebar = $('#side_bar');
places.map(createSidebar).forEach(function($sidebarPart) {
$sidebar.append($sidebarPart);
});
很抱歉,如果我回答您的问题时偏离了正轨,但我想这就是您所问的。如果您不愿意留下评论,我们可以进一步讨论!1.将代码放入函数中,2.调用函数,3.?,4.Profit只需做3.就这么简单。