顯示具有 ;jquery;javascript 標籤的文章。 顯示所有文章
顯示具有 ;jquery;javascript 標籤的文章。 顯示所有文章

2021年7月1日 星期四

[jquery-animate]錨點鏈接-滑動 需註意事項

 想做出html書 籤在同頁移動滑行 

在 html_load 時載入


 $('a[href*=\\#]:not([href=\\#])').click(function () {

                    // 選擇元素是<a>, 且href包含(*=)'#',但不是(not)'#'

                    // 當元素 $('a(...ry)')被按下(click)後執行 function(){...}

                    var target = $(this.hash);

                    

                    // 設target為網址錨點(this.hash)元素

                    $('html,body').animate({

                        // 網頁(html,body)執行動畫(animate)

                        scrollTop: target.offset().top

                        // 向上捲動(scrollTop): 距離( target於網頁相對位置(offset)的y座標(top) )

                    }, 1000);

                    // 執行時間1000ms

                    return false; // 停止動作

                }); // END $('a(...ry)').click

           });

一直有異常 後來發現一篇文章說明 
今天在移轉舊專案程式碼,遇到jquery一些錯誤,
查了一下原來是用的2.x版有特殊字元要跳脫的問題,記錄一下。

Syntax error, unrecognized expression:

your selector is not valid. # is a special char and needs to be escaped like 'a[href*=\\#]:not([href=\\#])'

來源:http://iambigd.blogspot.com/2017/06/jquery-syntax-error-unrecognized.html

原來#在javascript 是特殊字元 

所以一直在鬼打牆,特記之;


 

2017年10月18日 星期三

datepicker-日曆週數設定,取一周區間日期

1.週數:發現週數與現行不符,可以自定週數

$(function () {
self.moveTo(0, 0);
self.resizeTo(screen.availWidth, screen.availHeight);
$("#ContentPlaceHolder1_txt_sDt").datepicker({
dateFormat: 'yy-mm-dd',
showButtonPanel: true,
showOn: "both",

buttonImage: "../image/calendar.gif",
buttonImageOnly: true,
buttonText: "日期",
//default:false
showWeek: true,
//顯示周數的標題
//default""wk"
weekHeader: "W",
//自訂計算周數的方法,
//default datepicker.iso8601Week
calculateWeek: myWeekCalc

});
});



function myWeekCalc(date) {
var checkDate = new Date(date.getTime());
checkDate.setDate(checkDate.getDate() + 4 - (checkDate.getDay()));
var time = checkDate.getTime();
//設定1月1日
checkDate.setMonth(0);
checkDate.setDate(1);
return Math.floor(Math.round((time - checkDate) / 86400000) / 7) + 1;
}

2.取得一周的區間

function GetNowWeekPeriod(Curr) {
// 現在日期
var cDt = Curr.replace(/-/g, '/'); //轉換日期格式
var myDate = new Date(cDt);


// 現在是星期幾,日為0、一為1、二為2、三為3、四為4、五為5、六為6
var myDay = myDate.getDay();

// 設成日為7
//if (myDay == 0) {
// myDay = 7;
//}

var myStartDate = new Date(cDt);


// myStartDate.setDate(myStartDate.getDate() + (0 - (myDay - 1)));
//myDate.setDate(myStartDate.getDate() + (0 - (myDay - 1)));
myDate.setDate(myStartDate.getDate() + (0 - (myDay ))); //// 將日期變成目前禮拜的星期一

var myEndDate = new Date(cDt);

// 將日期變成目前禮拜的星期日
myEndDate.setDate(myEndDate.getDate() + (7 - myDay-1));

$("#ContentPlaceHolder1_txt_sDt").val(myDate.format("yyyy/MM/dd")); //輸出格式
$("#ContentPlaceHolder1_txt_eDt").val(myEndDate.format("yyyy/MM/dd"));//輸出格式

}
});

2017年8月9日 星期三

asp.net 呼叫javascript

protected void Btn_Sub_OK_Click(object sender, EventArgs e)
        {

          //call 是個標記,可無;
          //wrong('msg') javascript function ;
          ClientScript.RegisterStartupScript(this.GetType(), "", "wrong('" + show + "')", true);
   

        }