作者beerson (啤酒僧)
看板Web_Design
标题Re: [问题] 请问英雄联盟的这个页面功能怎麽做?
时间Wed Jul 17 12:55:54 2013
感谢y大的教学
小弟後来还是采取比较简单的方法
我是先把资料库的资料全部叫出来,赋予每个div id,然後再用js控制显示与否
但现在又遇到令一个问题
因为判断是否显示的部份会常常使用到,所以小弟想写个函式用来判断是否显示
结果函式一直无法执行,请问是怎麽回事呢?
<script type="text/javascript">
function test(){
alert("hello");
}
function hideornot(){
if (this.value == "male"){
$("div#female").css("display","none")
$("div#male").css("display","block")
}
else if (this.value == "female"){
$("div#male").css("display","none")
$("div#female").css("display","block")
}
}
$().ready(function(){
test();
$("select#sex").change(function(){hideornot();});
});
</script>
执行结果是test()可以执行,但是hideornot()不行
是因为hideornot()里面用到this的关系吗?
请问要怎麽改比较妥当呢?
※ 引述《lyforever (LY)》之铭言:
: ※ 引述《beerson (啤酒僧)》之铭言:
: : 痾,其实我是一直想要想一个方法解释我要问的问题
: : 但一直找不到合适的措辞,所以就跑去打LOL
: : 结果发现,这个页面就是我要做的功能阿
: : 贴上连结请问一下版上的各位前辈
: : 像这种点击checkbox後更改下方显示的内容资讯的方法是怎麽做的?
: : 小弟有想过是否是先load所有的英雄资料然後再用js控制显示与否
: : 但小弟的程式能力普普,不太会做
: : 是否有现成的JQuery函式可以套用呢?
: : 附上连结:http://lol.garena.tw/champions/
: : By the way, 小弟是用rails架的站,不知道在这种环境用哪个方法最适合?
: 直接看原始码
: <input type="checkbox" name="filter" id="filter" value="assassin">
: "刺杀"
: $().ready(function() {
: $(".someClass").tipTip({maxWidth: "400px",edgeOffset: 10});
: //以下开始, 选择input id为filter的 并且绑订click event,
: //换成白话文来就是有没有叫filter的被按了, 每次被按了就执行以下的情况
: $('input[id=filter]').click(function(){
: //呼叫blockUI
: $.blockUI();
: //算一下有多少被打勾
: var filters = $('input[id=filter]:checked').length;
: var filter_str = "";
: //把字串计算出来
: for(k=0;k<filters;k++){
: filter_str = (filter_str == "") ? "" : filter_str+",";
: filter_str = filter_str + $('input[id=filter]:checked').eq(k).val();
: }
: //去算新的list
: get_list(filter_str);
: });
: //网页一开始预设的list
: get_list();
: });
: //取得list 的function
: function get_list(types){
: types = (types == undefined) ? "" : types;
: //用post去取得新的list 并且showy在叫champion_list的地方
: $.post("t_champion-list.php",{type : types},function(data){
: $('#champion_list').html(data);
: $('#champion_list').show();
: $(".someClass").tipTip({maxWidth: "400px",edgeOffset: 30});
: });
: //结束unblock UI
: $.unblockUI();
: }
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 1.172.119.76
1F:推 mrbigmouth:$("select#sex").change(hideornot); 07/17 13:07
2F:→ beerson:WOW,解决了!感谢感谢!! 07/17 13:09
3F:→ beerson:竟然是这种错误XDDDD感谢M大喔 07/17 13:10
4F:→ beerson:咦?那如果我的hideornot里面有属性要带呢??? 07/17 13:14
5F:推 mrbigmouth:.change(function() { hideornot.call(this); }) 07/17 17:05
6F:→ lyforever:jQ有show()跟hide()还有toggle() 07/17 22:14
7F:→ lyforever:另外应该用visibility 取代display会比较好 07/17 22:14
8F:→ beerson:感谢y大,我立马来试试看 07/18 09:40
9F:→ beerson:ly大 07/18 09:40