原来我想在url中有“extraordinaire”匹配时清空div类。因为我正在为不同的域使用多个模板。而module_menu正在引用动态菜单。我必须删除此菜单,这是代码,它工作正常:
<div class="navigation-v" id="smoothmenu-v">
{module_menu,1216740}
</div>
<script type="text/javascript">
$(document).ready(function() {
if(location.href.indexOf('extraordinaire') >= 0) {
$('.navigation-v').empty();
// clear value then add new menu content inside
}
});
</script>
然后我尝试在空div中添加一个新菜单,我有以下代码,但它不起作用,我试过.appnd(),. html()但是没有一个工作,我认为问题也许是module_menu中的逗号打破逻辑,但我不是很确定。请帮忙。谢谢。
这是代码:
<script src="http://code.jquery.com/jquery-latest.js"></script> <script type="text/javascript"> $(document).ready(function() { if(location.href.indexOf('extraordinaire') >= 0) { $('.navigation-v').empty().html('{module_menu,1271722}'); // clear value then add new menu content inside } }); </script>
答案 0 :(得分:1)
使用replaceWith方法,它将用现有的div替换新的div
$('.navigation-v').replaceWith('<div class="navigation-v" id="smoothmenu-v">{module_menu,1271722}</div>');
或使用html方法如下
$('.navigation-v').html('{module_menu,1271722}');
答案 1 :(得分:0)
试试这个
$('.navigation-v').html('<div class="navigation-v" id="smoothmenu-v">{module_menu,1271722}</div>');
答案 2 :(得分:0)
不使用.html()函数,而是使用.append()方法。
$('.navigation-v').append('{module_menu,1271722}');
如果您只需要在div中插入内容而不实际更改其ID或其他属性,我发现这是一个更干净的方法。
答案 3 :(得分:0)
思想ID加上我的2便士因为你的代码在技术上很好。 (你可能并不意味着将另一个div与同一个类放在同一个类中但是嘿)问题是你所在的当前页面在Url中有extraordinaire
吗?
这是证明它有效的小提琴http://jsfiddle.net/tL3PN/1/
的Javascript
$(document).ready(function() {
if(location.href.indexOf("fiddle") >= 0) {
$('.navigation-v').empty().html('{module_menu,1271722}');
}
});
HTML
<div class="navigation-v" id="smoothmenu-v">Hello</div>
正如您所看到的,Hello
已被替换,因为在这种情况下,fiddle
位于当前网页网址中...
答案 4 :(得分:0)
您的代码看起来很好。我只是稍微改进了追加以使其可读。
$('.navigation-v').empty().append(
$('<div/>', {
'class': 'navigation-v',
'id': 'smoothmenu-v'
}).html("{module_menu,1271722}")
);
答案 5 :(得分:-1)
<script type="text/javascript">
$(document).ready(function() {
$('.classname').html('<div> content goes here </div>');
});
</script>