Use jQuery data to get HTML5 data- attributes

attr may read Dom content, use data to get content may be better

pull request again #8234

it's my first pull request. make some mistakes. sorry